STR
trait Foo { type Assoc: PartialEq<Box<Self>>; }
impl Foo for u32 { type Assoc = Box<u32>; }
fn foo<T: Foo+?Sized>(u: Box<T>, v: T::Assoc) -> bool {
&v == &u
}
fn main() {
let bar: Box<Foo<Assoc=Box<u32>>> = Box::new(4);
foo(bar, Box::new(5));
}
Result
<anon>:5:5: 5:13 error: internal compiler error: Encountered errors `[FulfillmentError(Obligation(predicate=Binder(TraitPredicate(<Box<u32> as core::cmp::PartialEq<Box<Foo<Assoc=Box<u32>> + 'static>>>)),depth=1),Unimplemented)]` fulfilling during trans
I guess this should be banned.
cc @nikomatsakis
STR
Result
I guess this should be banned.
cc @nikomatsakis