Skip to main content
Journey Uncommon Logo
JourneyUncommon
hardSwiftprotocol witness tablesSingle-choice MCQ

Why can a protocol with an associated type or `Self` requirement not be used directly as an existential type in older Swift versions (pre-`any`/pre-SE-0309 generalized existentials), in terms of witness-table mechanics?

protocol Container { associatedtype Item func first() -> Item } // let c: Container = ... // historically rejected