-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
Fix ICEs when Self
is used in type aliases
#62417
Conversation
@alexreg Can you add regression tests from the two issues this fixes? |
What about #62305? Should close this as well. Please also add a test for that |
d08a897
to
f035630
Compare
Okay, ready for review & merge now. Anyone feel free to do so. |
@bors r+ rollup |
📌 Commit f035630 has been approved by |
Thanks @pnkfelix! |
…nkfelix Fix ICEs when `Self` is used in type aliases I think it is right just to disallow this at resolution stage rather than let typeck produce a cyclic error. This is in line with previous behaviour. There was probably no need at all for the change that introduced this bug in rust-lang#57428, so I've simply reversed it. Fixes rust-lang#62263, rust-lang#62364, rust-lang#62305. r? @eddyb
…nkfelix Fix ICEs when `Self` is used in type aliases I think it is right just to disallow this at resolution stage rather than let typeck produce a cyclic error. This is in line with previous behaviour. There was probably no need at all for the change that introduced this bug in rust-lang#57428, so I've simply reversed it. Fixes rust-lang#62263, rust-lang#62364, rust-lang#62305. r? @eddyb
Rollup of 9 pull requests Successful merges: - #62417 (Fix ICEs when `Self` is used in type aliases) - #62450 (Raise the default recursion limit to 128) - #62470 (Prevent shrinking of "crate select" element on Firefox) - #62515 (cli: make help output for -l and -L consistent) - #62520 (Regression test for issue 42574.) - #62526 (normalize use of backticks in compiler messages for libsyntax/feature_gate.rs) - #62527 (clarify that debug_assert does not completely omits the code) - #62535 (ci: Configure $CI_JOB_NAME correctly) - #62541 (Add spastorino for rustc-guide toolstate) Failed merges: r? @ghost
Discussed at T-compiler meeting. accepted for beta backport. |
[beta] Rollup backports Cherry picked: * rustc_target: avoid negative register counts in the SysV x86_64 ABI. #62380 * Fix ICEs when `Self` is used in type aliases #62417 * Raise the default recursion limit to 128 #62450 * Handle errors during error recovery gracefully #62604 * Correctly break out of recovery loop #62607 * Cancel unemitted diagnostics during error recovery #62666 * ci: pin awscli dependencies #62856 * Ensure that checkout is with \n line endings #62564 Rolled up: * [beta] Backport #62615 #62793 * [beta] Fix #62660 #62792 r? @ghost
[beta] Rollup backports Cherry picked: * rustc_target: avoid negative register counts in the SysV x86_64 ABI. #62380 * Fix ICEs when `Self` is used in type aliases #62417 * Raise the default recursion limit to 128 #62450 * Handle errors during error recovery gracefully #62604 * Correctly break out of recovery loop #62607 * Cancel unemitted diagnostics during error recovery #62666 * ci: pin awscli dependencies #62856 * Ensure that checkout is with \n line endings #62564 Rolled up: * [beta] Backport #62615 #62793 * [beta] Fix #62660 #62792 r? @ghost
I think it is right just to disallow this at resolution stage rather than let typeck produce a cyclic error. This is in line with previous behaviour. There was probably no need at all for the change that introduced this bug in #57428, so I've simply reversed it.
Fixes #62263, #62364, #62305.
r? @eddyb