91b9ffeab0
In `report_fullfillment_errors` push back `T: Sized`, `T: WellFormed` and coercion errors to the end of the list. The pre-existing deduplication logic eliminates redundant errors better that way, keeping the resulting output with fewer errors than before, while also having more detail.
20 lines
279 B
Rust
20 lines
279 B
Rust
// compile-flags: -Ztrait-solver=next
|
|
|
|
trait Trait {}
|
|
|
|
struct W<T>(T);
|
|
|
|
impl<T, U> Trait for W<(W<T>, W<U>)>
|
|
where
|
|
W<T>: Trait,
|
|
W<U>: Trait,
|
|
{
|
|
}
|
|
|
|
fn impls<T: Trait>() {}
|
|
|
|
fn main() {
|
|
impls::<W<_>>();
|
|
//~^ ERROR overflow evaluating the requirement `W<_>: Trait`
|
|
}
|