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

Make sure special struct TypeInfo members are semantically analyzed before emitting the TypeInfo #3783

Merged
merged 1 commit into from
Jul 14, 2021

Conversation

kinke
Copy link
Member

@kinke kinke commented Jul 7, 2021

As there are apparently cases where the struct hasn't had semantic3 yet, at least with -linkonce-templates. This prevents erroneous xopCmp etc. (failing to compile) from being referenced in the TypeInfo (=> linker errors) / being analyzed for -linkonce-templates codegen. semanticTypeInfoMembers() replaces them by object._xopCmp() etc. if compilation fails.

…efore emitting the TypeInfo

As there are apparently cases where the struct hasn't had semantic3
yet, at least with -linkonce-templates. This prevents erroneous xopCmp
etc. (failing to compile) from being referenced in the TypeInfo (=>
linker errors) / being analyzed for -linkonce-templates codegen.
`semanticTypeInfoMembers()` replaces them by `object._xopCmp()` etc.
if compilation fails.
@kinke
Copy link
Member Author

kinke commented Jul 14, 2021

Sorry, can't be bothered to spend hours on setting up a dustmite run for a nicely reduced testcase...

@kinke kinke merged commit 6e15e1a into ldc-developers:master Jul 14, 2021
@kinke kinke deleted the semaTypeInfo branch July 14, 2021 13:41
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