Skip to content

Commit 206b29a

Browse files
committed
Expand remaining placeholders
1 parent 8e906f2 commit 206b29a

File tree

1 file changed

+23
-24
lines changed

1 file changed

+23
-24
lines changed

TSPL.docc/ReferenceManual/Attributes.md

Lines changed: 23 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1306,18 +1306,24 @@ can increase your binary size and adversely affect performance.
13061306

13071307
### preconcurrency
13081308

1309-
Apply this attribute to an import declaration or a declaration,
1309+
Apply this attribute to a declaration,
13101310
to suppress strict concurrency checking.
13111311

13121312
On an import declaration,
1313-
this attribute reduces the strictness of conccurrency checking
1313+
this attribute reduces the strictness of concurrency checking
13141314
for code that uses types from the imported module.
13151315
Specifically,
1316-
types fromthe imported module
1317-
that aren't explicitly marked as either sendeble or nonsendable
1316+
types from the imported module
1317+
that aren't explicitly marked as either sendable or nonsendable
13181318
can be used in a context that requires sendable types.
1319-
<!--XXX If the attribute isn't doing anything, it produces a warning.-->
13201319

1320+
On other declarations,
1321+
this attribute reduces the strictness of concurrency checking
1322+
for code that uses the symbol being declared.
1323+
When you use this symbol in a scope that has minimal concurrency checking,
1324+
you can use members of this type
1325+
that aren't explicitly marked as either sendable or nonsendable
1326+
in a context that requires sendable types.
13211327
You can apply this attribute
13221328
to the following kinds of declarations:
13231329

@@ -1329,29 +1335,22 @@ to the following kinds of declarations:
13291335
- Initializers
13301336
- Functions
13311337

1332-
On a declaration,
1333-
this attribute indicates
1338+
You can use this attribute as follows,
1339+
to aid in migrating code to strict concurrency checking:
13341340

1335-
<!-- XXX from SE-0337
1336-
Its name is mangled as though it does not use any of the listed features.
1337-
1338-
At use sites whose enclosing scope uses Minimal concurrency checking, the compiler will suppress any diagnostics about mismatches in these traits.
1339-
1340-
The ABI checker will remove any use of these features when it produces its digests.
1341-
-->
1342-
1343-
<!-- Probably move to some migration article/context:
1344-
1345-
You can use this attribute to aid in migration to strict concurrency checking:
1346-
1347-
1. Enable strict checking
1348-
1. Annotate imports with `@preconcurrency` as needed
1349-
1. After migrating the imported module, XXX
1350-
1. Remove `@preconcurrency` from import declarations
1351-
-->
1341+
1. Enable strict checking.
1342+
1. Annotate imports and declarations that need to be migrated
1343+
with the `preconcurrency` attribute.
1344+
1. After migrating a declaration,
1345+
remove the `preconcurrency` attribute from it.
1346+
1. After migrating a module,
1347+
the compiler will warn you about
1348+
any places where the `preconcurrency` attribute on an import
1349+
no longer has an effect and should be removed.
13521350

13531351
Declarations from Objective-C are always imported
13541352
as if they were marked with the `preconcurrency` attribute.
1353+
13551354
### propertyWrapper
13561355

13571356
Apply this attribute to a class, structure, or enumeration declaration

0 commit comments

Comments
 (0)