| //@ check-pass | |
| #![feature(impl_trait_in_bindings)] | |
| // A test for #61773 which would have been difficult to support if we | |
| // were to represent `impl_trait_in_bindings` using opaque types. | |
| trait Trait<'a, 'b> { } | |
| impl<T> Trait<'_, '_> for T { } | |
| fn bar<'a, 'b>(data0: &'a u32, data1: &'b u32) { | |
| let x: impl Trait<'_, '_> = (data0, data1); | |
| force_equal(x); | |
| } | |
| fn force_equal<'a>(t: impl Trait<'a, 'a>) { } | |
| fn main() { } |