Skip to content

IRGen: Don't directly call async functions that have weak/linkonce_odr linkage #64638

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

Conversation

aschwaighofer
Copy link
Contributor

The async function pointer context size and the async function implementiation are logically tied. Using a different async context pointer context size and async function implementation (from different translation units) is problematic.

rdar://106029807

…r linkage

The async function pointer context size and the async function implementiation are logically tied. Using a different async context pointer context size and async function implementation (from different translation units) is problematic.

rdar://106029807
@aschwaighofer
Copy link
Contributor Author

@swift-ci Please Build Toolchain Linux Platform

@aschwaighofer
Copy link
Contributor Author

@swift-ci test

@aschwaighofer
Copy link
Contributor Author

@swift-ci test macOS

@aschwaighofer aschwaighofer merged commit 3f8b9e2 into swiftlang:main Mar 29, 2023
aschwaighofer added a commit to aschwaighofer/swift that referenced this pull request Apr 18, 2023
…nce_odr linkage

The async function pointer context size and the async function implementiation are logically tied. Using a different async context pointer context size and async function implementation (from different translation units) is problematic.

rdar://106029807

Original PR: swiftlang#64638

Fixes an issue when linking static libraries/object files from different TU
with the same async function pointer name put different context values.
aschwaighofer added a commit to aschwaighofer/swift that referenced this pull request Apr 21, 2023
…nce_odr linkage

The async function pointer context size and the async function implementiation are logically tied. Using a different async context pointer context size and async function implementation (from different translation units) is problematic.

rdar://106029807

Original PR: swiftlang#64638
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