about summary refs log tree commit diff
path: root/tests/ui/type-alias-impl-trait/outlives-bound-var.rs
blob: b1711e9eab844ef6f088eb21e810ce87d8ff4db7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Here we process outlive obligations involving
// opaque types with bound vars in substs.
// This was an ICE.
//
//@ check-pass
#![feature(type_alias_impl_trait)]

pub type Ty<'a> = impl Sized + 'a;
#[define_opaque(Ty)]
fn define<'a>() -> Ty<'a> {}

// Ty<'^0>: 'static
fn test1(_: &'static fn(Ty<'_>)) {}

fn test2() {
    None::<&fn(Ty<'_>)>;
}

fn main() {}