Avatar
omochimetaru 10/9/2018 8:14 AM
いえ、 CのT2の制約を B から BProtocol に変更してます
8:15 AM
class A {} protocol BProtocol { associatedtype Info: A var info: Info? { get set } } class B<T1: A>: BProtocol { var info: T1? } protocol CProtocol { associatedtype Property: BProtocol var property: Property? { get set } } // vvvvvvvv ここが違う class C<T2 : BProtocol>: CProtocol { var property: T2? } (edited)
8:18 AM
二重になってたのが悪かったんですかね
(それを書く事自体は)悪くはないはずで、コンパイラのバグとして bugs.swift.org に報告するのが良いと思います
(edited)