Skip to content

Conversation

beccadax
Copy link
Contributor

The _Concurrency and _StringProcessing modules are implementation details of the standard library; to developers, their contents should behave as though they are declared directly within module Swift. This is the exact same behavior we expect of cross-import overlays, so treat these modules as though they are cross-import overlays with no bystanding module.

Because these modules don’t re-export the standard library, it’s also necessary to treat Swift as a separately imported overlay of itself; do so and make that actually work.

Offshoot of work on module selectors (#34556).

@beccadax
Copy link
Contributor Author

@swift-ci please test

@beccadax beccadax requested a review from DougGregor September 17, 2025 20:45
@beccadax beccadax requested a review from a team as a code owner September 17, 2025 22:59
@beccadax
Copy link
Contributor Author

@swift-ci please test

Copy link
Contributor

@ktoso ktoso left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is great, thank you @beccadax !

Mangling wise they're all still _Concurrency so that looks good :)

Copy link
Member

@DougGregor DougGregor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like this simplification. No notes!

@beccadax
Copy link
Contributor Author

@swift-ci please test

@beccadax beccadax enabled auto-merge September 26, 2025 00:24
@beccadax
Copy link
Contributor Author

@swift-ci smoke test

1 similar comment
@beccadax
Copy link
Contributor Author

@swift-ci smoke test

beccadax added a commit to beccadax/sourcekit-lsp that referenced this pull request Sep 30, 2025
swiftlang/swift#84358 makes the `_Concurrency` module behave like a cross-import overlay of `Swift`. This changes downstream behavior in SourceKit-LSP. Update a test to reflect that change.
@beccadax
Copy link
Contributor Author

With swiftlang/sourcekit-lsp#2313

@swift-ci please test

@beccadax beccadax disabled auto-merge October 1, 2025 02:08
The `_Concurrency` and `_StringProcessing` modules are implementation details of the standard library; to developers, their contents should behave as though they are declared directly within module `Swift`. This is the exact same behavior we expect of cross-import overlays, so treat these modules as though they are cross-import overlays with no bystanding module.

Because these modules don’t re-export the standard library, it’s also necessary to treat `Swift` as a separately imported overlay of itself; do so and make that actually work.
@beccadax beccadax force-pushed the common-concurrency branch from 00ac7a3 to 3abbfaa Compare October 2, 2025 19:05
@beccadax
Copy link
Contributor Author

beccadax commented Oct 2, 2025

With swiftlang/sourcekit-lsp#2313

@swift-ci please smoke test

beccadax added a commit to beccadax/sourcekit-lsp that referenced this pull request Oct 6, 2025
swiftlang/swift#84358 makes the `_Concurrency` module behave like a cross-import overlay of `Swift`. This changes downstream behavior in SourceKit-LSP. Update a test to reflect that change.
beccadax added a commit to beccadax/sourcekit-lsp that referenced this pull request Oct 6, 2025
swiftlang/swift#84358 makes the `_Concurrency` module behave like a cross-import overlay of `Swift`. This changes downstream behavior in SourceKit-LSP. Update a test to reflect that change.
@beccadax
Copy link
Contributor Author

beccadax commented Oct 7, 2025

This is ready to merge once the downstream swiftlang/sourcekit-lsp#2313 goes in.

@beccadax beccadax merged commit 60b3b08 into swiftlang:main Oct 7, 2025
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants