Avatar
norio_nomura 8/29/2017 3:11 AM
再現できた。 open class NSValue2 {} protocol Factory {} extension Factory { init(factory: () -> Self) { self = factory() } } extension NSValue2: Factory {} open class NSNumber2: NSValue2 { private override init() {} private convenience init(private: Int) { self.init(factory: { NSNumber2() }) } public convenience init(init0: Int) { self.init(private: init0) } } open class NSDecimalNumber2: NSNumber2 {} これでモジュール外の NSDecimalNumber2(init0:0) がビルドエラー error: 'NSDecimalNumber2' cannot be constructed because it has no accessible initializers になる。
3:15 AM
ああ、これ違う…