Skip to content

[cxx-interop] Class template specializations each need their own metadata. #41569

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

zoecarver
Copy link
Contributor

Make sure each class template specialization has its own metadata/value witness table. The issue here is that we got the name wrong. We need to use the mangled name so its different for each specialization.

@zoecarver zoecarver requested review from rjmccall and hyp February 26, 2022 00:22
@zoecarver zoecarver added the c++ interop Feature: Interoperability with C++ label Feb 26, 2022
@zoecarver zoecarver force-pushed the fix-class-template-metadata-issue branch from 3f4e912 to 1031a06 Compare February 26, 2022 00:22
@zoecarver
Copy link
Contributor Author

@swift-ci please test.

…data.

Make sure each class template specialization has its own metadata/value witness table. The issue here is that we got the name wrong. We need to use the mangled name so its different for each specialization.
@zoecarver zoecarver force-pushed the fix-class-template-metadata-issue branch from 1031a06 to 2749026 Compare March 3, 2022 22:27
@zoecarver
Copy link
Contributor Author

@swift-ci please test.

@zoecarver
Copy link
Contributor Author

@swift-ci please test Linux.

@zoecarver zoecarver merged commit 9a7f5c8 into swiftlang:main Mar 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c++ interop Feature: Interoperability with C++
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant