Skip to content

Conversation

xymus
Copy link
Contributor

@xymus xymus commented Jun 18, 2024

Exportability checking for non-public imports relies on classic access-level checks for some of the work. However while conforming to a local internal protocol from a public type is allowed, we should disallow it for imported types even when they are imported as internal.

Track exportability issues on conformances to protocols separately from the general category. Use that information to improve the diagnostics and report these issues for access-level on imports.

xymus added 3 commits June 18, 2024 13:44
Exportability checking for non-public imports relies on classic
access-level checks for some of the work. However while conforming
to a local internal protocol from a public type is allow we should
disallow it for imported types, even when imported as internal.

Track exportability issues on conformances to protocols separately
from the general category. Use that information to improve the
diagnostics and report these issues for access-level on imports.

rdar://128420980
@xymus xymus requested a review from nkcsgexi June 18, 2024 20:50
@xymus xymus requested a review from a team as a code owner June 18, 2024 20:50
@xymus
Copy link
Contributor Author

xymus commented Jun 18, 2024

@swift-ci Please test

Copy link
Contributor

@nkcsgexi nkcsgexi left a comment

Choose a reason for hiding this comment

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

Thank you for fixing this, Alexis!

@xymus xymus merged commit f5c8644 into swiftlang:release/6.0 Jun 20, 2024
@xymus xymus deleted the access-level-imports-conformances-6.0 branch June 20, 2024 18:24
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.

2 participants