-
Notifications
You must be signed in to change notification settings - Fork 13.2k
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
check type error recursively in typeck #128670
Conversation
r? @nnethercote rustbot has assigned @nnethercote. Use |
I don't know much about type checking and @compiler-errors reviewed #122749, which apparently caused #127742, so: r? compiler-errors |
This comment has been minimized.
This comment has been minimized.
d5a99f3
to
5d944e1
Compare
The job Click to see the possible cause of the failure (guessed by this bot)
|
I'm not getting a great feeling from this approach. It seems like a very heavy hammer, and I'd first like to see a detailed analysis for why #127742 ICEs in the first place. |
@rustbot author |
I realized my solution is quite naive too, during solving the stack overflow bug. The nested types can get really deep to traversal. Anyway, a more detailed ICE analysis is added under the issue. |
A more correct approach might be adding a But then we would run into Perhaps I should close this as duplicated with #113125. |
Prevent types that contains error from passing typeck and causing error in const eval later.
Type visitor doesn't visit fields of ADT thus cannot detect error in them. So I created a custom visitor to allow recursive visiting.
Fixes #127742.