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

Resolve 'extern' types during type layout generation if possible #6450

Merged
merged 4 commits into from
Feb 28, 2025

Conversation

expipiplus1
Copy link
Collaborator

Closes #5994 Closes #6437

@expipiplus1 expipiplus1 added the pr: non-breaking PRs without breaking changes label Feb 25, 2025
@expipiplus1 expipiplus1 requested a review from a team as a code owner February 25, 2025 07:39
@expipiplus1 expipiplus1 force-pushed the push-ppyroxovrrzn branch 4 times, most recently from 0877174 to f42bf52 Compare February 26, 2025 08:48
@expipiplus1
Copy link
Collaborator Author

/format

@slangbot
Copy link
Contributor

🌈 Formatted, please merge the changes from this PR

@csyonghe
Copy link
Collaborator

I wonder what will happen if you have an ordinary struct type with a field whose type is extern, and then you query the type layout of the outer struct type.

Another thing is if I lookup and get type layout first from a single IModile, then lookup and the type layout from a linked program on the same struct with extern field, will I get the up to date layout? iIRC we cache type layout on the type itself inside a dictionary owned by the module or something, and if so we may return the wrong result.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pr: non-breaking PRs without breaking changes
Projects
None yet
3 participants