From df04bd6c6cf639c6889896c6e4ea6d2c89ea4fcf Mon Sep 17 00:00:00 2001 From: Ben Striegel Date: Wed, 30 Jan 2013 22:58:07 -0500 Subject: [PATCH] Revert RIMOV to compile-fail tests --- src/test/compile-fail/alt-vec-tail-move.rs | 2 +- src/test/compile-fail/assign-super.rs | 2 +- .../compile-fail/borrowck-assign-comp-idx.rs | 6 ++--- .../compile-fail/borrowck-loan-vec-content.rs | 6 ++--- .../borrowck-mut-slice-of-imm-vec.rs | 2 +- .../borrowck-mut-vec-as-imm-slice-bad.rs | 4 +-- src/test/compile-fail/issue-2548.rs | 4 +-- src/test/compile-fail/issue-2969.rs | 2 +- src/test/compile-fail/issue-3243.rs | 4 +-- src/test/compile-fail/lub-in-args.rs | 2 +- .../compile-fail/mutable-huh-variance-box.rs | 2 +- .../compile-fail/mutable-huh-variance-deep.rs | 4 +-- .../compile-fail/mutable-huh-variance-ptr.rs | 2 +- .../compile-fail/mutable-huh-variance-rec.rs | 2 +- .../mutable-huh-variance-unique.rs | 2 +- .../compile-fail/mutable-huh-variance-vec1.rs | 8 +++--- .../compile-fail/mutable-huh-variance-vec2.rs | 6 ++--- .../compile-fail/mutable-huh-variance-vec3.rs | 8 +++--- .../compile-fail/mutable-huh-variance-vec4.rs | 18 ++++++------- src/test/compile-fail/non-const.rs | 2 +- ...ns-infer-invariance-due-to-mutability-2.rs | 4 +-- src/test/compile-fail/vec-add.rs | 26 +++++++++---------- 22 files changed, 59 insertions(+), 59 deletions(-) diff --git a/src/test/compile-fail/alt-vec-tail-move.rs b/src/test/compile-fail/alt-vec-tail-move.rs index 3239183bf1f9..cd85cb197781 100644 --- a/src/test/compile-fail/alt-vec-tail-move.rs +++ b/src/test/compile-fail/alt-vec-tail-move.rs @@ -1,5 +1,5 @@ fn main() { - let mut a = [1, 2, 3, 4]; + let a = [mut 1, 2, 3, 4]; let _ = match a { [1, 2, ..move tail] => tail, _ => core::util::unreachable() diff --git a/src/test/compile-fail/assign-super.rs b/src/test/compile-fail/assign-super.rs index 56c6beb0d340..a728a64f53b6 100644 --- a/src/test/compile-fail/assign-super.rs +++ b/src/test/compile-fail/assign-super.rs @@ -9,7 +9,7 @@ // except according to those terms. fn main() { - let mut x: ~[int] = ~[3]; + let mut x: ~[mut int] = ~[mut 3]; let y: ~[int] = ~[3]; x = y; //~ ERROR values differ in mutability } \ No newline at end of file diff --git a/src/test/compile-fail/borrowck-assign-comp-idx.rs b/src/test/compile-fail/borrowck-assign-comp-idx.rs index ded47fc9f7fe..21236dc4a83c 100644 --- a/src/test/compile-fail/borrowck-assign-comp-idx.rs +++ b/src/test/compile-fail/borrowck-assign-comp-idx.rs @@ -11,7 +11,7 @@ type point = { x: int, y: int }; fn a() { - let mut p = ~[1]; + let mut p = ~[mut 1]; // Create an immutable pointer into p's contents: let _q: &int = &p[0]; //~ NOTE loan of mutable vec content granted here @@ -25,7 +25,7 @@ fn b() { // here we alias the mutable vector into an imm slice and try to // modify the original: - let mut p = ~[1]; + let mut p = ~[mut 1]; do borrow(p) { //~ NOTE loan of mutable vec content granted here p[0] = 5; //~ ERROR assigning to mutable vec content prohibited due to outstanding loan @@ -35,7 +35,7 @@ fn b() { fn c() { // Legal because the scope of the borrow does not include the // modification: - let mut p = ~[1]; + let mut p = ~[mut 1]; borrow(p, ||{}); p[0] = 5; } diff --git a/src/test/compile-fail/borrowck-loan-vec-content.rs b/src/test/compile-fail/borrowck-loan-vec-content.rs index fbc9ad911e86..1423eac4ab87 100644 --- a/src/test/compile-fail/borrowck-loan-vec-content.rs +++ b/src/test/compile-fail/borrowck-loan-vec-content.rs @@ -17,13 +17,13 @@ fn takes_imm_elt(_v: &int, f: fn()) { } fn has_mut_vec_and_does_not_try_to_change_it() { - let mut v = ~[1, 2, 3]; + let v = ~[mut 1, 2, 3]; do takes_imm_elt(&v[0]) { } } fn has_mut_vec_but_tries_to_change_it() { - let mut v = ~[1, 2, 3]; + let v = ~[mut 1, 2, 3]; do takes_imm_elt(&v[0]) { //~ NOTE loan of mutable vec content granted here v[1] = 4; //~ ERROR assigning to mutable vec content prohibited due to outstanding loan } @@ -34,7 +34,7 @@ fn takes_const_elt(_v: &const int, f: fn()) { } fn has_mut_vec_and_tries_to_change_it() { - let mut v = ~[1, 2, 3]; + let v = ~[mut 1, 2, 3]; do takes_const_elt(&const v[0]) { v[1] = 4; } diff --git a/src/test/compile-fail/borrowck-mut-slice-of-imm-vec.rs b/src/test/compile-fail/borrowck-mut-slice-of-imm-vec.rs index bc0340983ae3..51448d6061e2 100644 --- a/src/test/compile-fail/borrowck-mut-slice-of-imm-vec.rs +++ b/src/test/compile-fail/borrowck-mut-slice-of-imm-vec.rs @@ -8,7 +8,7 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -fn write(v: &mut [int]) { +fn write(v: &[mut int]) { v[0] += 1; } diff --git a/src/test/compile-fail/borrowck-mut-vec-as-imm-slice-bad.rs b/src/test/compile-fail/borrowck-mut-vec-as-imm-slice-bad.rs index 310d3e970864..88263df954b2 100644 --- a/src/test/compile-fail/borrowck-mut-vec-as-imm-slice-bad.rs +++ b/src/test/compile-fail/borrowck-mut-vec-as-imm-slice-bad.rs @@ -14,11 +14,11 @@ fn want_slice(v: &[int]) -> int { return sum; } -fn has_mut_vec(+v: @~[int]) -> int { +fn has_mut_vec(+v: @~[mut int]) -> int { want_slice(*v) //~ ERROR illegal borrow unless pure //~^ NOTE impure due to access to impure function } fn main() { - assert has_mut_vec(@~[1, 2, 3]) == 6; + assert has_mut_vec(@~[mut 1, 2, 3]) == 6; } \ No newline at end of file diff --git a/src/test/compile-fail/issue-2548.rs b/src/test/compile-fail/issue-2548.rs index 78c4ed54c95e..2684289d70f7 100644 --- a/src/test/compile-fail/issue-2548.rs +++ b/src/test/compile-fail/issue-2548.rs @@ -33,8 +33,8 @@ fn main() { { let mut res = foo(x); - let mut v = ~[]; - v = move ~[(move res)] + v; //~ ERROR instantiating a type parameter with an incompatible type (needs `copy`, got `&static`, missing `copy`) + let mut v = ~[mut]; + v = move ~[mut (move res)] + v; //~ ERROR instantiating a type parameter with an incompatible type (needs `copy`, got `&static`, missing `copy`) assert (v.len() == 2); } diff --git a/src/test/compile-fail/issue-2969.rs b/src/test/compile-fail/issue-2969.rs index 88c76fb31a1f..5e1b9397247d 100644 --- a/src/test/compile-fail/issue-2969.rs +++ b/src/test/compile-fail/issue-2969.rs @@ -12,7 +12,7 @@ fn main() { // See #2969 -- error message should be improved - let mut x = [1, 2, 4]; + let mut x = [mut 1, 2, 4]; let v : &int = &x[2]; x[2] = 6; assert *v == 6; diff --git a/src/test/compile-fail/issue-3243.rs b/src/test/compile-fail/issue-3243.rs index 926b6b324f87..4a09e93deff3 100644 --- a/src/test/compile-fail/issue-3243.rs +++ b/src/test/compile-fail/issue-3243.rs @@ -9,8 +9,8 @@ // except according to those terms. // xfail-test -fn function() -> &mut [int] { - let mut x: &static/[int] = &[1,2,3]; +fn function() -> &[mut int] { + let mut x: &static/[mut int] = &[mut 1,2,3]; x[0] = 12345; x //~ ERROR bad } diff --git a/src/test/compile-fail/lub-in-args.rs b/src/test/compile-fail/lub-in-args.rs index 8734ef8c0aae..ffd5ce3d1080 100644 --- a/src/test/compile-fail/lub-in-args.rs +++ b/src/test/compile-fail/lub-in-args.rs @@ -11,7 +11,7 @@ fn two_args(x: T, y: T) { } fn main() { - let mut x: ~[int] = ~[3]; + let x: ~[mut int] = ~[mut 3]; let y: ~[int] = ~[3]; let a: @mut int = @mut 3; let b: @int = @3; diff --git a/src/test/compile-fail/mutable-huh-variance-box.rs b/src/test/compile-fail/mutable-huh-variance-box.rs index 7869e39ba6ca..316c832f0119 100644 --- a/src/test/compile-fail/mutable-huh-variance-box.rs +++ b/src/test/compile-fail/mutable-huh-variance-box.rs @@ -14,7 +14,7 @@ fn main() { let v = @mut ~[0]; fn f(&&v: @mut ~[const int]) { - *v = ~[3] + *v = ~[mut 3] } f(v); diff --git a/src/test/compile-fail/mutable-huh-variance-deep.rs b/src/test/compile-fail/mutable-huh-variance-deep.rs index f0147eb3d08c..4f0c6d7a4c87 100644 --- a/src/test/compile-fail/mutable-huh-variance-deep.rs +++ b/src/test/compile-fail/mutable-huh-variance-deep.rs @@ -11,9 +11,9 @@ // error-pattern: mismatched types fn main() { - let mut v = ~[@mut ~mut ~[0]]; + let v = ~[mut @mut ~mut ~[0]]; - fn f(&&v: ~[@mut ~mut ~[const int]]) { + fn f(&&v: ~[mut @mut ~mut ~[const int]]) { } f(v); diff --git a/src/test/compile-fail/mutable-huh-variance-ptr.rs b/src/test/compile-fail/mutable-huh-variance-ptr.rs index 5723c49be8b3..e2299597c2f5 100644 --- a/src/test/compile-fail/mutable-huh-variance-ptr.rs +++ b/src/test/compile-fail/mutable-huh-variance-ptr.rs @@ -18,7 +18,7 @@ fn main() { fn f(&&v: *mut ~[const int]) { unsafe { - *v = ~[3] + *v = ~[mut 3] } } diff --git a/src/test/compile-fail/mutable-huh-variance-rec.rs b/src/test/compile-fail/mutable-huh-variance-rec.rs index fc4be7f588b9..1ee2bb18321c 100644 --- a/src/test/compile-fail/mutable-huh-variance-rec.rs +++ b/src/test/compile-fail/mutable-huh-variance-rec.rs @@ -14,7 +14,7 @@ fn main() { let v = {mut g: ~[0]}; fn f(&&v: {mut g: ~[const int]}) { - v.g = ~[3] + v.g = ~[mut 3] } f(v); diff --git a/src/test/compile-fail/mutable-huh-variance-unique.rs b/src/test/compile-fail/mutable-huh-variance-unique.rs index 633d2230aea8..f2188911346e 100644 --- a/src/test/compile-fail/mutable-huh-variance-unique.rs +++ b/src/test/compile-fail/mutable-huh-variance-unique.rs @@ -14,7 +14,7 @@ fn main() { let v = ~mut ~[0]; fn f(&&v: ~mut ~[const int]) { - *v = ~[3] + *v = ~[mut 3] } f(v); diff --git a/src/test/compile-fail/mutable-huh-variance-vec1.rs b/src/test/compile-fail/mutable-huh-variance-vec1.rs index 239ae377b9bb..c3f4636f898b 100644 --- a/src/test/compile-fail/mutable-huh-variance-vec1.rs +++ b/src/test/compile-fail/mutable-huh-variance-vec1.rs @@ -11,11 +11,11 @@ fn main() { // Note: explicit type annot is required here // because otherwise the inference gets smart - // and assigns a type of ~[~[const int]]. - let mut v: ~[~[int]] = ~[~[0]]; + // and assigns a type of ~[mut ~[const int]]. + let v: ~[mut ~[int]] = ~[mut ~[0]]; - fn f(&&v: ~[~[const int]]) { - v[0] = ~[3] + fn f(&&v: ~[mut ~[const int]]) { + v[0] = ~[mut 3] } f(v); //~ ERROR (values differ in mutability) diff --git a/src/test/compile-fail/mutable-huh-variance-vec2.rs b/src/test/compile-fail/mutable-huh-variance-vec2.rs index 239ae377b9bb..aeb06324341f 100644 --- a/src/test/compile-fail/mutable-huh-variance-vec2.rs +++ b/src/test/compile-fail/mutable-huh-variance-vec2.rs @@ -11,10 +11,10 @@ fn main() { // Note: explicit type annot is required here // because otherwise the inference gets smart - // and assigns a type of ~[~[const int]]. - let mut v: ~[~[int]] = ~[~[0]]; + // and assigns a type of ~[mut ~[const int]]. + let v: ~[mut ~[mut int]] = ~[mut ~[mut 0]]; - fn f(&&v: ~[~[const int]]) { + fn f(&&v: ~[mut ~[const int]]) { v[0] = ~[3] } diff --git a/src/test/compile-fail/mutable-huh-variance-vec3.rs b/src/test/compile-fail/mutable-huh-variance-vec3.rs index ffcd79772ad3..edc66536e9ba 100644 --- a/src/test/compile-fail/mutable-huh-variance-vec3.rs +++ b/src/test/compile-fail/mutable-huh-variance-vec3.rs @@ -11,11 +11,11 @@ fn main() { // Note: explicit type annot is required here // because otherwise the inference gets smart - // and assigns a type of ~[~[const int]]. - let mut v: ~[~[~[int]]] = ~[~[~[0]]]; + // and assigns a type of ~[mut ~[const int]]. + let v: ~[mut ~[mut ~[int]]] = ~[mut ~[mut ~[0]]]; - fn f(&&v: ~[~[~[const int]]]) { - v[0][1] = ~[3] + fn f(&&v: ~[mut ~[mut ~[const int]]]) { + v[0][1] = ~[mut 3] } f(v); //~ ERROR (values differ in mutability) diff --git a/src/test/compile-fail/mutable-huh-variance-vec4.rs b/src/test/compile-fail/mutable-huh-variance-vec4.rs index dd65dac5d93f..e0980826a2a5 100644 --- a/src/test/compile-fail/mutable-huh-variance-vec4.rs +++ b/src/test/compile-fail/mutable-huh-variance-vec4.rs @@ -13,23 +13,23 @@ fn main() { // Note: here we do not have any type annotations // but we do express conflicting requirements: - let mut v = ~[~[0]]; - let mut w = ~[~[0]]; - let mut x = ~[~[0]]; + let v = ~[mut ~[0]]; + let w = ~[mut ~[mut 0]]; + let x = ~[mut ~[mut 0]]; - fn f(&&v: ~[~[int]]) { + fn f(&&v: ~[mut ~[int]]) { v[0] = ~[3] } fn g(&&v: ~[const ~[const int]]) { } - fn h(&&v: ~[~[int]]) { - v[0] = ~[3] + fn h(&&v: ~[mut ~[mut int]]) { + v[0] = ~[mut 3] } - fn i(&&v: ~[~[const int]]) { - v[0] = ~[3] + fn i(&&v: ~[mut ~[const int]]) { + v[0] = ~[mut 3] } fn j(&&v: ~[~[const int]]) { @@ -48,7 +48,7 @@ fn main() { j(w); //~ ERROR (values differ in mutability) // Note that without adding f() or h() to the mix, it is valid for - // x to have the type ~[~[const int]], and thus we can safely + // x to have the type ~[mut ~[const int]], and thus we can safely // call g() and i() but not j(): g(x); i(x); diff --git a/src/test/compile-fail/non-const.rs b/src/test/compile-fail/non-const.rs index b708f50004fa..b8c7eb4a204b 100644 --- a/src/test/compile-fail/non-const.rs +++ b/src/test/compile-fail/non-const.rs @@ -44,7 +44,7 @@ fn main() { foo({f: 3}); foo({mut f: 3}); //~ ERROR missing `const` foo(~[1]); - foo(~[1]); //~ ERROR missing `const` + foo(~[mut 1]); //~ ERROR missing `const` foo(~1); foo(~mut 1); //~ ERROR missing `const` foo(@1); diff --git a/src/test/compile-fail/regions-infer-invariance-due-to-mutability-2.rs b/src/test/compile-fail/regions-infer-invariance-due-to-mutability-2.rs index 4b637b0195c3..523b48f2aff7 100644 --- a/src/test/compile-fail/regions-infer-invariance-due-to-mutability-2.rs +++ b/src/test/compile-fail/regions-infer-invariance-due-to-mutability-2.rs @@ -9,7 +9,7 @@ // except according to those terms. struct invariant { - f: @mut [&int] + f: @[mut &int] } fn to_same_lifetime(bi: invariant/&r) { @@ -25,4 +25,4 @@ fn to_longer_lifetime(bi: invariant/&r) -> invariant/&static { } fn main() { -} +} \ No newline at end of file diff --git a/src/test/compile-fail/vec-add.rs b/src/test/compile-fail/vec-add.rs index 445f23ac46b3..0eaf40e110f1 100644 --- a/src/test/compile-fail/vec-add.rs +++ b/src/test/compile-fail/vec-add.rs @@ -14,7 +14,7 @@ // the right hand side in all cases. We are getting compiler errors // about this now, so I'm xfailing the test for now. -eholk -fn add(i: ~[int], m: ~[int], c: ~[const int]) { +fn add(i: ~[int], m: ~[mut int], c: ~[const int]) { // Check that: // (1) vectors of any two mutabilities can be added @@ -24,9 +24,9 @@ fn add(i: ~[int], m: ~[int], c: ~[const int]) { m + ~[3], ~[3]); - add(i + ~[3], - m + ~[3], - ~[3]); + add(i + ~[mut 3], + m + ~[mut 3], + ~[mut 3]); add(i + i, m + i, @@ -54,19 +54,19 @@ fn add(i: ~[int], m: ~[int], c: ~[const int]) { //~^ mismatched types ~[3]); - add(m + ~[3], //~ ERROR mismatched types - m + ~[3], - m + ~[3]); + add(m + ~[mut 3], //~ ERROR mismatched types + m + ~[mut 3], + m + ~[mut 3]); - add(i + ~[3], - i + ~[3], //~ ERROR mismatched types - i + ~[3]); + add(i + ~[mut 3], + i + ~[mut 3], //~ ERROR mismatched types + i + ~[mut 3]); - add(c + ~[3], //~ ERROR binary operation + cannot be applied + add(c + ~[mut 3], //~ ERROR binary operation + cannot be applied //~^ mismatched types - c + ~[3], //~ ERROR binary operation + cannot be applied + c + ~[mut 3], //~ ERROR binary operation + cannot be applied //~^ mismatched types - ~[3]); + ~[mut 3]); add(m + i, //~ ERROR mismatched types m + i,