1 error: implementation of `Foo` is not general enough
2 --> $DIR/hrtb-just-for-static.rs:24:5
4 LL | want_hrtb::<StaticInt>()
5 | ^^^^^^^^^^^^^^^^^^^^^^ implementation of `Foo` is not general enough
7 = note: `StaticInt` must implement `Foo<&'0 isize>`, for any lifetime `'0`...
8 = note: ...but it actually implements `Foo<&'static isize>`
10 error: lifetime may not live long enough
11 --> $DIR/hrtb-just-for-static.rs:30:5
13 LL | fn give_some<'a>() {
14 | -- lifetime `'a` defined here
15 LL | want_hrtb::<&'a u32>()
16 | ^^^^^^^^^^^^^^^^^^^^ requires that `'a` must outlive `'static`
18 note: due to current limitations in the borrow checker, this implies a `'static` lifetime
19 --> $DIR/hrtb-just-for-static.rs:9:15
21 LL | where T : for<'a> Foo<&'a isize>
22 | ^^^^^^^^^^^^^^^^^^^^^^
24 error: implementation of `Foo` is not general enough
25 --> $DIR/hrtb-just-for-static.rs:30:5
27 LL | want_hrtb::<&'a u32>()
28 | ^^^^^^^^^^^^^^^^^^^^ implementation of `Foo` is not general enough
30 = note: `Foo<&'0 isize>` would have to be implemented for the type `&u32`, for any lifetime `'0`...
31 = note: ...but `Foo<&'1 isize>` is actually implemented for the type `&'1 u32`, for some specific lifetime `'1`
33 error: aborting due to 3 previous errors