1 fn a<'a>() -> &'a [isize] {
2 let vec = vec![1, 2, 3, 4];
3 let vec: &[isize] = &vec;
5 &[_, ref tail @ ..] => tail,
8 tail //~ ERROR cannot return value referencing local variable `vec`
11 fn b<'a>() -> &'a [isize] {
12 let vec = vec![1, 2, 3, 4];
13 let vec: &[isize] = &vec;
14 let init = match vec {
15 &[ref init @ .., _] => init,
18 init //~ ERROR cannot return value referencing local variable `vec`
21 fn c<'a>() -> &'a [isize] {
22 let vec = vec![1, 2, 3, 4];
23 let vec: &[isize] = &vec;
24 let slice = match vec {
25 &[_, ref slice @ .., _] => slice,
28 slice //~ ERROR cannot return value referencing local variable `vec`