diff options
| author | Niko Matsakis <niko@alum.mit.edu> | 2012-10-24 09:47:59 -0700 |
|---|---|---|
| committer | Niko Matsakis <niko@alum.mit.edu> | 2012-10-24 18:56:31 -0700 |
| commit | 8468c40fdef3544169ea5b06b5b9905a5d448495 (patch) | |
| tree | 07e7b4ec960f94d51239ca3ef2d5cb0513e72792 | |
| parent | 1a3a70760b4dfe03e135f28b5456d61752d3e677 (diff) | |
Workaround #3850
| -rw-r--r-- | src/test/run-pass/string-self-append.rs | 2 | ||||
| -rw-r--r-- | src/test/run-pass/vec-ivec-deadlock.rs | 6 | ||||
| -rw-r--r-- | src/test/run-pass/vec-self-append.rs | 6 |
3 files changed, 9 insertions, 5 deletions
diff --git a/src/test/run-pass/string-self-append.rs b/src/test/run-pass/string-self-append.rs index a8be417c955..9e0442a2509 100644 --- a/src/test/run-pass/string-self-append.rs +++ b/src/test/run-pass/string-self-append.rs @@ -8,7 +8,7 @@ fn main() { while i > 0 { log(error, str::len(a)); assert (str::len(a) == expected_len); - a += a; + a = a + a; // FIXME(#3387)---can't write a += a i -= 1; expected_len *= 2u; } diff --git a/src/test/run-pass/vec-ivec-deadlock.rs b/src/test/run-pass/vec-ivec-deadlock.rs index 5609a76231b..d8bef194e47 100644 --- a/src/test/run-pass/vec-ivec-deadlock.rs +++ b/src/test/run-pass/vec-ivec-deadlock.rs @@ -1 +1,5 @@ -fn main() { let a = ~[1, 2, 3, 4, 5]; let mut b = ~[a, a]; b += b; } +fn main() { + let a = ~[1, 2, 3, 4, 5]; + let mut b = ~[a, a]; + b = b + b; // FIXME(#3387)---can't write b += b +} diff --git a/src/test/run-pass/vec-self-append.rs b/src/test/run-pass/vec-self-append.rs index 1b0475a72cf..82fa7103b4d 100644 --- a/src/test/run-pass/vec-self-append.rs +++ b/src/test/run-pass/vec-self-append.rs @@ -3,7 +3,7 @@ extern mod std; fn test_heap_to_heap() { // a spills onto the heap let mut a = ~[0, 1, 2, 3, 4]; - a += a; + a = a + a; // FIXME(#3387)---can't write a += a assert (vec::len(a) == 10u); assert (a[0] == 0); assert (a[1] == 1); @@ -21,7 +21,7 @@ fn test_stack_to_heap() { // a is entirely on the stack let mut a = ~[0, 1, 2]; // a spills to the heap - a += a; + a = a + a; // FIXME(#3387)---can't write a += a assert (vec::len(a) == 6u); assert (a[0] == 0); assert (a[1] == 1); @@ -39,7 +39,7 @@ fn test_loop() { while i > 0 { log(error, vec::len(a)); assert (vec::len(a) == expected_len); - a += a; + a = a + a; // FIXME(#3387)---can't write a += a i -= 1; expected_len *= 2u; } |
