@@ -150,10 +150,11 @@ The following changes are permitted:
150150 the outermost wrapper is implementation-detail
151151 (``@ImplementationDetail @MyWrapper ``).
152152- Changing or removing a default argument is a `binary-compatible source-breaking change `.
153- - Changing arguments in the property-wrapper custom attribute of an API-level wrapper
154- (``@API(argument: 5) ``) or in the custom attributes of compositions
155- where the outermost wrapper is API-level (``@API @MyWrapper(argument: 5) ``) is a
156- `binary-compatible source-breaking change `.
153+ - Changing arguments in the property-wrapper custom attribute of an
154+ implementation-detail wrapper (``@ImplementationDetail(argument: 5) ``) or
155+ in the custom attributes of compositions where the outermost wrapper is
156+ implementation-detail (``@ImplementationDetail @MyWrapper(argument: 5) ``)
157+ is a `binary-compatible source-breaking change `.
157158- Adding or removing the ``@discardableResult `` and ``@warn_unqualified_access ``
158159 attributes.
159160
@@ -164,9 +165,10 @@ No other changes are permitted; the following are particularly of note:
164165 wrappers (``@API ``) or compositions where the outermost wrapper is
165166 API-level (``@API @MyWrapper ``).
166167- An ABI-public function may neither add nor remove arguments from the
167- property-wrapper custom attribute of an API-level wrapper
168- (``@API(argument: 5) ``) or in the custom attributes of compositions
169- where the outermost wrapper is API-level (``@API @MyWrapper(argument: 5) ``).
168+ property-wrapper custom attribute of a wrapper supporting projected-value
169+ initialization (``@ValueProjecting(argument: 5) ``) or in the custom
170+ attributes of compositions where the outermost wrapper is projected-value
171+ initializable (``@ValueProjecting @MyWrapper(argument: 5) ``).
170172- An ABI-public function may not change its generic requirements.
171173- An ABI-public function may not change its external parameter names (labels).
172174- An ABI-public function may not add, remove, or reorder parameters, whether or
@@ -433,10 +435,11 @@ stored subscripts. This means that the following changes are permitted:
433435 (``@ImplementationDetail @MyWrapper ``).
434436- Changing or removing a default argument is a `binary-compatible
435437 source-breaking change `.
436- - Changing arguments in the property-wrapper custom attribute of an API-level wrapper
437- (``@API(argument: 5) ``) or in the custom attributes of compositions
438- where the outermost wrapper is API-level (``@API @MyWrapper(argument: 5) ``) is a
439- `binary-compatible source-breaking change `.
438+ - Changing arguments in the property-wrapper custom attribute of an
439+ implementation-detail wrapper (``@ImplementationDetail(argument: 5) ``) or
440+ in the custom attributes of compositions where the outermost wrapper is
441+ implementation-detail (``@ImplementationDetail @MyWrapper(argument: 5) ``)
442+ is a `binary-compatible source-breaking change `.
440443
441444Like properties, subscripts can be marked ``@inlinable ``, which makes
442445changing the body of an accessor a `binary-compatible source-breaking change `.
@@ -807,10 +810,11 @@ counterparts with a few small changes:
807810- Adding a default argument expression to an index parameter is permitted.
808811- Changing or removing a default argument is a `binary-compatible
809812 source-breaking change `.
810- - Changing arguments in the property-wrapper custom attribute of an API-level wrapper
811- (``@API(argument: 5) ``) or in the custom attributes of compositions
812- where the outermost wrapper is API-level (``@API @MyWrapper(argument: 5) ``) is a
813- `binary-compatible source-breaking change `.
813+ - Changing arguments in the property-wrapper custom attribute of an
814+ implementation-detail wrapper (``@ImplementationDetail(argument: 5) ``) or
815+ in the custom attributes of compositions where the outermost wrapper is
816+ implementation-detail (``@ImplementationDetail @MyWrapper(argument: 5) ``)
817+ is a `binary-compatible source-breaking change `.
814818
815819Adding a public setter to an ``open `` subscript is a
816820`binary-compatible source-breaking change `; any existing overrides will not
0 commit comments