-
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
ICE in typeck: assertion failed in librustc/middle/typeck/check/method/confirm.rs #19583
Comments
Minimal example: struct Container<'a> {
s: Struct<'a>
}
struct Struct<'a> {
parent: &'a Struct<'a>
}
impl<'a> Struct<'a> {
pub fn new() -> Struct<'a> {
Struct {
parent: None
}
}
pub fn get(&self, key: &str) -> Container<'a> {
match self.parent {
Some(ref p) => p.get(key),
None => {/* ... */}
}
}
}
fn main() {
//
} It still produces different backtraces on Linux and Windows. |
The code doesn't ICE when wrapping |
barosl
added a commit
to barosl/rust
that referenced
this issue
Dec 19, 2014
check::autoderef() returns a ty_err when it fails to infer the type. probe::probe() should respect this failure and fail together to prevent further corruption. Call stack: check::check_method_call() -> method::lookup() -> probe::probe() + confirm::confirm() Fixes rust-lang#19692. Fixes rust-lang#19583. Fixes rust-lang#19297.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Compiling some code (on Linux) resulted in this ICE:
The same code ICE's with a different stack backtrace when compiling on Windows:
I wasn't able to quickly get a minimal example, but will do so tomorrow.
The text was updated successfully, but these errors were encountered: