Skip to content
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

[android] do not import stdatomic from android's libc++ #74348

Merged
merged 1 commit into from
Jun 13, 2024

Conversation

hyp
Copy link
Contributor

@hyp hyp commented Jun 12, 2024

android's libc++ uses an older module map that requires C++23 for stdatomic, and thus it fails to compile with anything else

not quite sure why this worked in the initial testing, but after some changes in LLVM/Swift the Android import requires stdatomic not to come from libc++ as it has an outdated requirement.

android's libc++ uses an older module map that requires C++23 for stdatomic, and thus it fails to compile with anything else
@hyp hyp requested a review from ian-twilightcoder June 12, 2024 17:05
@hyp hyp requested review from zoecarver, egorzhdan and a team as code owners June 12, 2024 17:05
@hyp
Copy link
Contributor Author

hyp commented Jun 12, 2024

CC @finagolfin as well

@hyp
Copy link
Contributor Author

hyp commented Jun 12, 2024

@swift-ci please test

@finagolfin
Copy link
Member

I don't use C++ interop myself so I don't know much about this issue: @egorzhdan or someone else will have to review.

Some good news though: I tracked down the change in the Termux headers that was causing the Swift/C++ interop issue there, along with a bizarre function overloading issue in the libc++ headers that I simply commented out for now. I will run the full Swift compiler validation suite in Termux next and see if those Termux header changes fix most of the C++ interop issues I have been seeing in Termux.

@hyp
Copy link
Contributor Author

hyp commented Jun 13, 2024

Some good news though: I tracked down the change in the Termux headers that was causing the Swift/C++ interop issue there, along with a bizarre function overloading issue in the libc++ headers that I simply commented out for now. I will run the full Swift compiler validation suite in Termux next and see if those Termux header changes fix most of the C++ interop issues I have been seeing in Termux.

Cool, that sounds good!

I will merge this in, to unblock further testing and cherry-picking the Android changes to swift 6.

@hyp hyp merged commit a49eb8e into swiftlang:main Jun 13, 2024
5 checks passed
hyp added a commit to hyp/swift that referenced this pull request Jun 27, 2024
[android] do not import stdatomic from android's libc++
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