Skip to content

[cxx-interop] Ensure field offset vector matches the structs/fields metadata #81838

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
May 30, 2025

Conversation

susmonteiro
Copy link
Contributor

The field offset vector should be consistent with the type metadata emitted for structs and fields. If we don't emit metadata for private C++ fields, then the field offset vector shouldn't include these fields.

This is a follow-up to #81035

@susmonteiro susmonteiro requested a review from rjmccall as a code owner May 29, 2025 17:39
@susmonteiro susmonteiro added the c++ interop Feature: Interoperability with C++ label May 29, 2025
@susmonteiro
Copy link
Contributor Author

@swift-ci please smoke test

@susmonteiro susmonteiro merged commit 8ce5f2b into main May 30, 2025
3 checks passed
@susmonteiro susmonteiro deleted the susmonteiro/metadata-private-fields branch May 30, 2025 11:03
susmonteiro added a commit that referenced this pull request May 30, 2025
…etadata

The field offset vector should be consistent with the type metadata emitted for structs and fields. If we don't emit metadata for private C++ fields, then the field offset vector shouldn't include these fields.

This is a follow-up to #81838
(cherry picked from c3077bf and 7686f05)
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.

2 participants