Why has Swift 1.2 broken inheritance of UIDynamicAnimator's init(collectionViewLayout:)? -


in swift 1.1 , before, legal:

let layout = uicollectionviewlayout() class mydynamicanimator : uidynamicanimator {} let anim2 = mydynamicanimator(collectionviewlayout:layout) 

in swift 1.2, refuses compile. why?

i can work around problem overriding init(collectionviewlayout:) nothing call super:

class mydynamicanimator : uidynamicanimator {     override init(collectionviewlayout:uicollectionviewlayout) {         super.init(collectionviewlayout:collectionviewlayout)     } } 

but seems kind of nutty. if can override it, why can't inherit it?

note: i'm guessing reason problem might uidynamicanimator's init(collectionviewlayout:) designated initializer declared in extension, illegal according swift. isn't illegal according cocoa, surely still needs inherited! breakage feels bug me... should no business of mine, programmer, caught technicalities of initializer happens declared in structure of api header.

[edit: i've filed bug report on apple, have received no reply. situation remains inexplicable me. not persuaded has extension, either. seems wrong.]

this bug, shown fact fixed in xcode 7 / ios 9.


Comments

Popular posts from this blog

css - SVG using textPath a symbol not rendering in Firefox -

Java 8 + Maven Javadoc plugin: Error fetching URL -

node.js - How to abort query on demand using Neo4j drivers -