| struct Foo<'a>(&'a str); | |
| struct Buzz<'a, 'b>(&'a str, &'b str); | |
| struct Qux<'a, T>(&'a T); | |
| struct Quux<T>(T); | |
| enum Bar { | |
| A, | |
| B, | |
| C, | |
| } | |
| struct Baz<'a, 'b, 'c> { | |
| buzz: Buzz<'a>, | |
| //~^ ERROR struct takes 2 lifetime arguments | |
| //~| HELP add missing lifetime argument | |
| bar: Bar<'a>, | |
| //~^ ERROR enum takes 0 lifetime arguments | |
| //~| HELP remove the unnecessary generics | |
| foo2: Foo<'a, 'b, 'c>, | |
| //~^ ERROR struct takes 1 lifetime argument | |
| //~| HELP remove the lifetime arguments | |
| qux1: Qux<'a, 'b, i32>, | |
| //~^ ERROR struct takes 1 lifetime argument | |
| //~| HELP remove the lifetime argument | |
| qux2: Qux<'a, i32, 'b>, | |
| //~^ ERROR struct takes 1 lifetime argument | |
| //~| HELP remove the lifetime argument | |
| qux3: Qux<'a, 'b, 'c, i32>, | |
| //~^ ERROR struct takes 1 lifetime argument | |
| //~| HELP remove the lifetime arguments | |
| qux4: Qux<'a, i32, 'b, 'c>, | |
| //~^ ERROR struct takes 1 lifetime argument | |
| //~| HELP remove the lifetime arguments | |
| qux5: Qux<'a, 'b, i32, 'c>, | |
| //~^ ERROR struct takes 1 lifetime argument | |
| //~| HELP remove the lifetime argument | |
| quux: Quux<'a, i32, 'b>, | |
| //~^ ERROR struct takes 0 lifetime arguments | |
| //~| HELP remove the lifetime argument | |
| } | |
| pub trait T { | |
| type A; | |
| type B; | |
| } | |
| fn trait_bound_generic<I: T<u8, u16>>(_i: I) { | |
| //~^ ERROR trait takes 0 generic arguments | |
| //~| HELP turn the generic arguments into associated item bindings | |
| } | |
| fn main() {} |