mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
- Standardize on "inlinable" instead of "inlineable", per SE-0193. - Standardize on "frozen enums" instead of "closed enums", even though SE-0192 wasn't quite conclusive on this. - Typealiases are treated as versioned entities for the purpose of verifying availability. - Per SE-0193, inlinable functions do not have always-emit-into-client behavior. - Rename the fragility attribute for properties and subscripts to '@inlinableAccess' for now, since '@inlinable' has been implemented for functions now. (We may still end up choosing to use the same name for these declarations too.) - Private and fileprivate entities cannot be '@inlinable' today. - We implemented the always-emit-into-client change for default arguments. They also have even stricter restrictions than most inlinable functions. - A struct initializer can also assign to 'self' instead of delegating with `self.init`. - Disallow adding new associated types to protocols for now. - Mention that precedence groups exist. - Mention that '@usableFromInline' exists. - '@inlinable' can be backdated, even though all the other fragility attributes cannot. - Tweak TODO around '@NSManaged'. - Tweak list of planned proposals. This document still deserves some more drastic restructuring to separate the near-term features from the long-term features.
74 KiB
74 KiB