]> git.lizzy.rs Git - rust.git/blob - src/test/ui/rfc-2093-infer-outlives/enum.rs
Rollup merge of #58812 - jonhoo:floor_v_trunc, r=alexcrichton
[rust.git] / src / test / ui / rfc-2093-infer-outlives / enum.rs
1 // ignore-tidy-linelength
2
3 #![feature(rustc_attrs)]
4
5 // Needs an explicit where clause stating outlives condition. (RFC 2093)
6
7 // Type T needs to outlive lifetime 'a.
8 #[rustc_outlives]
9 enum Foo<'a, T> { //~ ERROR rustc_outlives
10     One(Bar<'a, T>)
11 }
12
13 // Type U needs to outlive lifetime 'b
14 #[rustc_outlives]
15 struct Bar<'b, U> { //~ ERROR rustc_outlives
16     field2: &'b U
17 }
18
19 // Type K needs to outlive lifetime 'c.
20 #[rustc_outlives]
21 enum Ying<'c, K> { //~ ERROR rustc_outlives
22     One(&'c Yang<K>)
23 }
24
25 struct Yang<V> {
26     field2: V
27 }
28
29 fn main() {}