//@ 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 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() { }