-
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: cat_expr Errd from array of unconstrained type -- { []; } #22897
Labels
I-ICE
Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️
Comments
rprichard
changed the title
ICE: cat_expr Errd from array of unspecified type -- { []; }
ICE: cat_expr Errd from array of unconstrained type -- { []; }
Feb 28, 2015
kmcallister
added
the
I-ICE
Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️
label
Mar 1, 2015
This seems to trigger the same bug: fn main() { 0 as *mut _; } |
Closed
I think I ran into the same problem running similar code pub fn hello(mystr: &str) -> &[str] {
&[];
}
pub fn main() {
} Compiler output
version
|
ebfull
added a commit
to ebfull/rust
that referenced
this issue
Apr 13, 2015
An actual typeck error is the cause of many failed compilations but an unrelated bug is being reported instead. It is triggered because a typeck error is presumably not yet identified during compiler execution, which would normally bypass an invariant in the presence of other errors. In this particular situation, we delay the reporting of the bug until abort_if_errors(). Closes rust-lang#23827, closes rust-lang#24356, closes rust-lang#23041, closes rust-lang#22897, closes rust-lang#23966, closes rust-lang#24013, and closes rust-lang#23729
ghost
mentioned this issue
Apr 18, 2015
Closed
bors
added a commit
that referenced
this issue
Apr 26, 2015
An actual typeck error is the cause of many failed compilations but an unrelated bug is being reported instead. It is triggered because a typeck error is presumably not yet identified during compiler execution, which would normally bypass an invariant in the presence of other errors. In this particular situation, we delay the reporting of the bug until abort_if_errors(). Closes #23827, closes #24356, closes #23041, closes #22897, closes #23966, closes #24013, and closes #23729 **There is at least one situation where this bug may still be genuinely triggered (#23437).**
This was referenced Jun 23, 2015
Closed
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Test case:
Output:
Compiler version:
I modified the test case in #22894 by moving the
&*""
intofn main()
, and I saw the same ICE. I then changed the""
to the similar&[]
, and I saw an ICE with a different error message and a different stack trace (e.g. phase 3 instead of phase 4). The&
and*
are unnecessary.I also see the
cat_expr Errd
message in #22037, but there are differences -- this issue happens in phase 3 rather than 4, and there is no "fictitious type" message.The text was updated successfully, but these errors were encountered: