> 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
