diff --git a/src/lib/list.rs b/src/lib/list.rs index d368b609275e..10500e64c951 100644 --- a/src/lib/list.rs +++ b/src/lib/list.rs @@ -25,7 +25,7 @@ Function: from_vec Create a list from a vector */ -fn from_vec(v: [T]) -> list { +fn from_vec(v: [mutable? T]) -> list { let l = nil::; // FIXME: This would be faster and more space efficient if it looped over // a reverse vector iterator. Unfortunately generic iterators seem not to diff --git a/src/test/stdtest/list.rs b/src/test/stdtest/list.rs index a53132e879c6..0bfbcbe68a49 100644 --- a/src/test/stdtest/list.rs +++ b/src/test/stdtest/list.rs @@ -14,6 +14,14 @@ fn test_from_vec() { assert (car(cdr(cdr(l))) == 2); } +#[test] +fn test_from_vec_mut() { + let l = from_vec([mutable 0, 1, 2]); + assert (car(l) == 0); + assert (car(cdr(l)) == 1); + assert (car(cdr(cdr(l))) == 2); +} + #[test] fn test_foldl() { let l = from_vec([0, 1, 2, 3, 4]);