Commit Graph

10 Commits

Author SHA1 Message Date
Pavel Yaskevich
e850f1708f [Concurrency] SE-0466: Replace UnspecifiedMeansMainActorIsolated flag with -default-isolation 2025-03-23 22:04:39 -07:00
Michael Gottesman
7e350bb4ce Revert "[concurrency] Add Concurrent/ConcurrentUnsafe and use it instead of ActorIsolation::Nonisolated."
This reverts commit 0cb64638d0.
2025-02-06 14:05:06 -08:00
Michael Gottesman
791d07d379 Revert "Test fixes"
This reverts commit 9c328a81d1.
2025-02-06 14:04:28 -08:00
Michael Gottesman
9c328a81d1 Test fixes 2025-02-03 13:35:08 -08:00
Michael Gottesman
0cb64638d0 [concurrency] Add Concurrent/ConcurrentUnsafe and use it instead of ActorIsolation::Nonisolated.
This is just the first part of a larger transition.
2025-02-03 10:56:06 -08:00
Holly Borla
28948965dd [Concurrency] Two isolation inference changes for default isolation mode.
1. Non-actor initializers should participate in custom default isolation
   inference. Otherwise, they will not be able to touch the type's stored
   properties to initialize them if those properties have the default
   isolation inferred.
2. All declarations inside actors and distributed actors do not participate
   in default isolation inference; they remain unspecified, so the existing
   isolation inference rules apply.
2025-01-30 11:54:57 +00:00
Michael Gottesman
ade4fb7f79 [assume-mainactor] Only perform the change for items that are within the current module.
I also added a small runtime test just as a sanity check. We do not change any
codegen here since the change is at the Sema level... but I thought it would be
prudent to at least have a small smoke test.

rdar://140439795
2024-11-22 14:11:30 -08:00
Daniel Rodríguez Troitiño
ba68faaed5 [test] Mark tests that use experimental/upcoming features as such
Find all the usages of `--enable-experimental-feature` or
`--enable-upcoming-feature` in the tests and replace some of the
`REQUIRES: asserts` to use `REQUIRES: swift-feature-Foo` instead, which
should correctly apply to depending on the asserts/noasserts mode of the
toolchain for each feature.

Remove some comments that talked about enabling asserts since they don't
apply anymore (but I might had miss some).

All this was done with an automated script, so some formatting weirdness
might happen, but I hope I fixed most of those.

There might be some tests that were `REQUIRES: asserts` that might run
in `noasserts` toolchains now. This will normally be because their
feature went from experimental to upcoming/base and the tests were not
updated.
2024-11-02 11:46:46 -07:00
Daniel Rodríguez Troitiño
7446df0973 [concurrency] UnspecifiedMeansMainActorIsolated tests as require asserts
Two test using an experimental feature UnspecifiedMeansMainActorIsolated
are not marking as `REQUIRES: asserts` and are failing when asserts are
disabled.

Introduced in #76558
2024-09-20 13:49:51 -07:00
Michael Gottesman
3843899c19 [concurrency] Behind the flag UnspecifiedMeansMainActorIsolated, try inferring by default main actor isolation instead of nonisolated for unspecified.
Just to play with.
2024-09-18 13:23:23 -07:00