4 #![allow(unused_assignments)]
5 #![allow(unknown_lints)]
6 // pretty-expanded FIXME #23616
8 #![allow(dead_assignment)]
9 #![allow(unused_variables)]
10 #![feature(box_syntax)]
12 struct A { a: isize, b: isize }
13 struct Abox { a: Box<isize>, b: Box<isize> }
15 fn ret_int_i() -> isize { 10 }
17 fn ret_ext_i() -> Box<isize> { box 10 }
19 fn ret_int_rec() -> A { A {a: 10, b: 10} }
21 fn ret_ext_rec() -> Box<A> { box A {a: 10, b: 10} }
23 fn ret_ext_mem() -> Abox { Abox {a: box 10, b: box 10} }
25 fn ret_ext_ext_mem() -> Box<Abox> { box Abox{a: box 10, b: box 10} }
29 let mut ext_i: Box<isize>;
31 let mut ext_rec: Box<A>;
32 let mut ext_mem: Abox;
33 let mut ext_ext_mem: Box<Abox>;
34 int_i = ret_int_i(); // initializing
36 int_i = ret_int_i(); // non-initializing
38 int_i = ret_int_i(); // non-initializing
40 ext_i = ret_ext_i(); // initializing
42 ext_i = ret_ext_i(); // non-initializing
44 ext_i = ret_ext_i(); // non-initializing
46 int_rec = ret_int_rec(); // initializing
48 int_rec = ret_int_rec(); // non-initializing
50 int_rec = ret_int_rec(); // non-initializing
52 ext_rec = ret_ext_rec(); // initializing
54 ext_rec = ret_ext_rec(); // non-initializing
56 ext_rec = ret_ext_rec(); // non-initializing
58 ext_mem = ret_ext_mem(); // initializing
60 ext_mem = ret_ext_mem(); // non-initializing
62 ext_mem = ret_ext_mem(); // non-initializing
64 ext_ext_mem = ret_ext_ext_mem(); // initializing
66 ext_ext_mem = ret_ext_ext_mem(); // non-initializing
68 ext_ext_mem = ret_ext_ext_mem(); // non-initializing