Skip to content

Commit e9a3570

Browse files
simanerushrjmccall
andauthored
Update proposals/NNNN-global-actor-isolated-types-usability.md
Co-authored-by: John McCall <[email protected]>
1 parent 669f1d1 commit e9a3570

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

proposals/NNNN-global-actor-isolated-types-usability.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,8 @@ In the above code, an instance of `Subclass` can be passed across isolation boun
9999

100100
We propose that:
101101

102-
- `Sendable` properties of a global-actor-isolated value type would be treated `nonisolated` as inferred within the module.
102+
- Stored properties of `Sendable` type in a global-actor-isolated value type can be declared as `nonisolated` without using `(unsafe)`.
103+
- Stored properties of `Sendable` type in a global-actor-isolated value type are treated as `nonisolated` when used within the module or if the value type is `frozen`.
103104
- `@Sendable` would be inferred for global-actor-isolated functions and closures. Additionally, globally isolated closures would be allowed to capture non-`Sendable` values.
104105
- The programmer would be able to suppress the automatic conformance inferred via the above rule using the new `@~Sendable` attribute. By analogy, introduce a new `~Sendable` protocol to indicate that a nominal type is not `Sendable`.
105106
- Require the global-actor-isolated subclass of a `nonisolated`, non-`Sendable` to be non-`Sendable`.

0 commit comments

Comments
 (0)