-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
ICE with match on non-const functions in constant definitions #46843
Labels
A-MIR
Area: Mid-level IR (MIR) - https://blog.rust-lang.org/2016/04/19/MIR.html
regression-from-stable-to-beta
Performance or correctness regression from stable to beta.
Milestone
Comments
jdm
added
the
regression-from-stable-to-beta
Performance or correctness regression from stable to beta.
label
Dec 19, 2017
eddyb
added
the
A-MIR
Area: Mid-level IR (MIR) - https://blog.rust-lang.org/2016/04/19/MIR.html
label
Dec 19, 2017
cc @arielb1 @nikomatsakis Did anything change in pattern-matching between stable and beta? |
I'm bisecting as I'm writing this, but it's taking a while on my dual-core laptop :( |
cc @est31 -- Is there a chance you could run bisect? We should really get playground to be capable of doing it... |
@Mark-Simulacrum not today, sorry. Maybe on friday... |
Deewiant
added a commit
to Deewiant/rust
that referenced
this issue
Dec 20, 2017
Fixes rust-lang#46843. rust-lang#45821 added unreachable blocks in matches, which were terminated in construct_fn but not in construct_const, causing a panic due to "no terminator on block" when constants involved matching on enums. The "unimplemented expression type" error may go away in the future, the key is that we see the E0015 about using a non-const function and then don't ICE.
bors
added a commit
that referenced
this issue
Dec 21, 2017
MIR: terminate unreachable blocks in construct_const Fixes #46843. #45821 added unreachable blocks in matches, which were terminated in construct_fn but not in construct_const, causing a panic due to "no terminator on block" when constants involved matching on enums. The "unimplemented expression type" error may go away in the future, the key is that we see the E0015 about using a non-const function and then don't ICE.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
A-MIR
Area: Mid-level IR (MIR) - https://blog.rust-lang.org/2016/04/19/MIR.html
regression-from-stable-to-beta
Performance or correctness regression from stable to beta.
(playground)
This ICEs on nightly/beta, but produces a correct error on stable.
Originally reported on Reddit here.
The text was updated successfully, but these errors were encountered: