Add test for bad suggestion
This commit is contained in:
parent
01d784131f
commit
992ba801c2
2 changed files with 29 additions and 0 deletions
|
|
@ -0,0 +1,12 @@
|
|||
trait Foo {
|
||||
type T<'a1, 'b1>
|
||||
where
|
||||
'a1: 'b1;
|
||||
}
|
||||
|
||||
impl Foo for () {
|
||||
type T<'a2, 'b2> = () where 'b2: 'a2;
|
||||
//~^ ERROR impl has stricter requirements than trait
|
||||
}
|
||||
|
||||
fn main() {}
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
error[E0276]: impl has stricter requirements than trait
|
||||
--> $DIR/mismatched-where-clause-regions.rs:8:38
|
||||
|
|
||||
LL | type T<'a1, 'b1>
|
||||
| ---------------- definition of `T` from trait
|
||||
...
|
||||
LL | type T<'a2, 'b2> = () where 'b2: 'a2;
|
||||
| ^^^ impl has extra requirement `'b2: 'a2`
|
||||
|
|
||||
help: copy the `where` clause predicates from the trait
|
||||
|
|
||||
LL | type T<'a2, 'b2> = () where 'a2: 'b2;
|
||||
| ~~~~~~~~~~~~~~
|
||||
|
||||
error: aborting due to previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0276`.
|
||||
Loading…
Add table
Add a link
Reference in a new issue