Protocol methods in a class extension are not called under specific conditions
问题 I encountered a weird behavior. The best way I can put it is … Not overridden protocol methods in a class extension are not called while the superclass already conforms to the protocol (via extension) . However this happens only while it's build with the release build configuration. class A: UIViewController {} extension A: UIScrollViewDelegate { func scrollViewDidScroll(_ scrollView: UIScrollView) { print("scrollViewDidScroll in superclass") } } class B: A { // A tableView (and its data