> On Mar 31, 2017, at 9:33 AM, Daryle Walker via swift-evolution 
> <[email protected]> wrote:
> 
> 
>> On Feb 15, 2017, at 3:36 PM, Slava Pestov <[email protected]> wrote:
>> 
>> Values of concrete type always have the same size regardless of what 
>> protocols the type conforms to.
> 
> So, two struct types with the same instance-level stored properties, but one 
> with no protocol conformance and the other with at least one, have the same 
> stride-of? Does that mean that the latter type keeps no per-instance space 
> for protocol support? Or that all struct types keep protocol accounting 
> information, even when a struct’s protocol list is empty (like the former 
> type)?

Protocol conformances are a distinct runtime object from the type itself. 
There's never any direct record of the conformance in a type's own metadata or 
instances. This is what allows conformances to be added externally by 
extensions from other modules.

-Joe
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to