fn a() -> &[int] {
let vec = vec!(1, 2, 3, 4);
- let vec: &[int] = vec; //~ ERROR does not live long enough
+ let vec: &[int] = vec.as_slice(); //~ ERROR does not live long enough
let tail = match vec {
[_, ..tail] => tail,
_ => fail!("a")
fn b() -> &[int] {
let vec = vec!(1, 2, 3, 4);
- let vec: &[int] = vec; //~ ERROR does not live long enough
+ let vec: &[int] = vec.as_slice(); //~ ERROR does not live long enough
let init = match vec {
[..init, _] => init,
_ => fail!("b")
fn c() -> &[int] {
let vec = vec!(1, 2, 3, 4);
- let vec: &[int] = vec; //~ ERROR does not live long enough
+ let vec: &[int] = vec.as_slice(); //~ ERROR does not live long enough
let slice = match vec {
[_, ..slice, _] => slice,
_ => fail!("c")