Holly Borla

Results 50 comments of Holly Borla

The bug is that this is valid ```swift group.addTask { @MainActor [c] in await c.mutateC() } ``` `c` is not `Sendable` and passing `c` to the generic executor on the...

cc @gottesmm, I believe this should be diagnosed by region isolation because a value from the main actor region is being sent outside the main actor.

@gottesmm `c` cannot become main actor isolated because it's a field of `self`. It should be invalid to transfer it. EDIT: I'm wrong, because the function that the send happens...

Yes that's right, SE-0470 is only for protocol conformances. I'm working on a proposal to apply similar techniques to subclasses to allow isolated overrides like this (using the basic approach...

Yes, this is a deliberate language design choice. I was leaving this open to try to dig up documentation for why, and if it doesn't exist, I'll write it up.

> So you know that this would lead to a runtime crash and still decide to not produce a warning or error? 🫣 I greatly appreciate your constructive feedback and...

Perhaps my comment was misunderstood. The compiler does not and cannot know the code will crash at runtime, because it cannot see across module boundaries into the implementation of the...

> I would love for this behavior to not crash and also not produce a warning. You can [disable the dynamic actor isolation checking](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0423-dynamic-actor-isolation.md#disabling-dynamic-actor-isolation-checking) with `-disable-dynamic-actor-isolation`.

>do you mind linking where the implicit behavior is documented, for future reference? (it's not easy to navigate Swift Concurrency rules) I added documentation for this behavior in the migration...