blob: 060ee8821d8da946560087a760625e1d98484f5d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
#![warn(unused_lifetimes)]
pub trait X {
type Y<'a: 'static>;
//~^ WARNING unnecessary lifetime parameter
}
impl X for () {
type Y<'a> = &'a ();
}
struct B<'a, T: for<'r> X<Y<'r> = &'r ()>> {
f: <T as X>::Y<'a>,
//~^ ERROR lifetime bound not satisfied
}
struct C<'a, T: X> {
f: <T as X>::Y<'a>,
//~^ ERROR lifetime bound not satisfied
}
struct D<'a> {
f: <() as X>::Y<'a>,
//~^ ERROR lifetime bound not satisfied
}
fn main() {}
|