]> git.lizzy.rs Git - rust.git/blob - src/test/ui/issues/issue-12470.rs
Auto merge of #57108 - Mark-Simulacrum:license-remove, r=pietroalbini
[rust.git] / src / test / ui / issues / issue-12470.rs
1 #![feature(box_syntax)]
2
3 trait X {
4     fn get_i(&self) -> isize;
5 }
6
7
8 struct B {
9     i: isize
10 }
11
12 impl X for B {
13     fn get_i(&self) -> isize {
14         self.i
15     }
16 }
17
18 struct A<'a> {
19     p: &'a (X+'a)
20 }
21
22 fn make_a<'a>(p: &'a X) -> A<'a> {
23     A { p: p }
24 }
25
26 fn make_make_a<'a>() -> A<'a> {
27     let b: Box<B> = box B {i:1};
28     let bb: &B = &*b;    //~ ERROR does not live long enough
29     make_a(bb)
30 }
31
32 fn main() {
33     let _a = make_make_a();
34 }