2021-07-26 15:01:16 -05:00
|
|
|
#![feature(type_alias_impl_trait)]
|
2021-07-20 10:16:41 -05:00
|
|
|
|
2022-09-28 11:01:05 -05:00
|
|
|
pub trait Captures<'a> {}
|
|
|
|
|
|
|
|
impl<'a, T: ?Sized> Captures<'a> for T {}
|
|
|
|
|
|
|
|
type X<'a, 'b> = impl std::fmt::Debug + Captures<'a> + Captures<'b>;
|
2021-07-20 10:16:41 -05:00
|
|
|
|
|
|
|
fn f<'t, 'u>(a: &'t u32, b: &'u u32) -> (X<'t, 'u>, X<'u, 't>) {
|
|
|
|
(a, a)
|
2022-02-09 10:44:17 -06:00
|
|
|
//~^ ERROR concrete type differs from previous defining opaque type use
|
2021-07-20 10:16:41 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {}
|