Closed
Description
This code compiles fine on stable/beta, but ICEs on nightly:
pub struct Foo {
raw: u8
}
pub struct Bar {
raw: u8,
}
impl Drop for Bar {
fn drop(&mut self) {}
}
fn foo<T>() -> T { loop {} }
fn main() {
let mut a: &mut FnMut(Foo, Bar) = foo();
let ref mut b = a;
b(foo(), foo());
}
cc @eddyb, happened last night, maybe recent trans changes?