Skip to content

Commit 8468c40

Browse files
committed
Workaround #3850
1 parent 1a3a707 commit 8468c40

File tree

3 files changed

+9
-5
lines changed

3 files changed

+9
-5
lines changed

src/test/run-pass/string-self-append.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ fn main() {
88
while i > 0 {
99
log(error, str::len(a));
1010
assert (str::len(a) == expected_len);
11-
a += a;
11+
a = a + a; // FIXME(#3387)---can't write a += a
1212
i -= 1;
1313
expected_len *= 2u;
1414
}
+5-1
Original file line numberDiff line numberDiff line change
@@ -1 +1,5 @@
1-
fn main() { let a = ~[1, 2, 3, 4, 5]; let mut b = ~[a, a]; b += b; }
1+
fn main() {
2+
let a = ~[1, 2, 3, 4, 5];
3+
let mut b = ~[a, a];
4+
b = b + b; // FIXME(#3387)---can't write b += b
5+
}

src/test/run-pass/vec-self-append.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ extern mod std;
33
fn test_heap_to_heap() {
44
// a spills onto the heap
55
let mut a = ~[0, 1, 2, 3, 4];
6-
a += a;
6+
a = a + a; // FIXME(#3387)---can't write a += a
77
assert (vec::len(a) == 10u);
88
assert (a[0] == 0);
99
assert (a[1] == 1);
@@ -21,7 +21,7 @@ fn test_stack_to_heap() {
2121
// a is entirely on the stack
2222
let mut a = ~[0, 1, 2];
2323
// a spills to the heap
24-
a += a;
24+
a = a + a; // FIXME(#3387)---can't write a += a
2525
assert (vec::len(a) == 6u);
2626
assert (a[0] == 0);
2727
assert (a[1] == 1);
@@ -39,7 +39,7 @@ fn test_loop() {
3939
while i > 0 {
4040
log(error, vec::len(a));
4141
assert (vec::len(a) == expected_len);
42-
a += a;
42+
a = a + a; // FIXME(#3387)---can't write a += a
4343
i -= 1;
4444
expected_len *= 2u;
4545
}

0 commit comments

Comments
 (0)