Skip to content

🍒[APINotes] For a re-exported module, look for APINotes in the re-exporting module's apinotes file #8067

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jan 27, 2024

Conversation

egorzhdan
Copy link

If module FooCore is re-exported through module Foo (by using export_as in the modulemap), look for attributes of FooCore symbols in Foo.apinotes file.

Swift bundles std.apinotes file that adds Swift-specific attributes to the C++ stdlib symbols. In recent versions of libc++, module std got split into multiple top-level modules, each of them is re-exported through std. This change allows us to keep using a single modulemap file for all supported C++ stdlibs.

rdar://121680760

(cherry picked from commit 5084e0e)

…rting module's apinotes file

If module FooCore is re-exported through module Foo (by using `export_as` in the modulemap), look for attributes of FooCore symbols in Foo.apinotes file.

Swift bundles `std.apinotes` file that adds Swift-specific attributes to the C++ stdlib symbols. In recent versions of libc++, module std got split into multiple top-level modules, each of them is re-exported through std. This change allows us to keep using a single modulemap file for all supported C++ stdlibs.

rdar://121680760

(cherry picked from commit 5084e0e)
@egorzhdan
Copy link
Author

@swift-ci please test

@egorzhdan egorzhdan merged commit 9bb8aee into stable/20230725 Jan 27, 2024
@egorzhdan egorzhdan deleted the egorzhdan/apinotes-export-as-20230725 branch January 27, 2024 13:36
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.

1 participant