about summary refs log tree commit diff
path: root/src/libstd/rope.rs
diff options
context:
space:
mode:
authorPatrick Walton <pcwalton@mimiga.net>2013-01-11 21:01:42 -0800
committerPatrick Walton <pcwalton@mimiga.net>2013-01-17 11:50:20 -0800
commitf405e41d7a43ebd7fdd0fcd90f6e0542a5a6ccf6 (patch)
tree62e7e079cb5998e833ec950e9525330a1dc1e9e8 /src/libstd/rope.rs
parent8bde2c1d6533bf693dbb6ae8105bb082ad0ff0fe (diff)
librustc: Implement write guards for borrowing `@mut` to `&` or `&mut`. r=nmatsakis
Diffstat (limited to 'src/libstd/rope.rs')
-rw-r--r--src/libstd/rope.rs21
1 files changed, 18 insertions, 3 deletions
diff --git a/src/libstd/rope.rs b/src/libstd/rope.rs
index 153f3956884..d478970ca9f 100644
--- a/src/libstd/rope.rs
+++ b/src/libstd/rope.rs
@@ -1322,7 +1322,12 @@ mod tests {
     fn of_string2() {
         let buf = @ mut ~"1234567890";
         let mut i = 0;
-        while i < 10 { *buf = *buf + *buf; i+=1;}
+        while i < 10 {
+            let a = *buf;
+            let b = *buf;
+            *buf = a + b;
+            i+=1;
+        }
         let sample = @*buf;
         let r      = of_str(sample);
         assert char_len(r) == str::char_len(*sample);
@@ -1353,7 +1358,12 @@ mod tests {
     fn iter1() {
         let buf = @ mut ~"1234567890";
         let mut i = 0;
-        while i < 10 { *buf = *buf + *buf; i+=1;}
+        while i < 10 {
+            let a = *buf;
+            let b = *buf;
+            *buf = a + b;
+            i+=1;
+        }
         let sample = @*buf;
         let r      = of_str(sample);
 
@@ -1374,7 +1384,12 @@ mod tests {
         let init = @~"1234567890";
         let buf  = @mut * init;
         let mut i = 0;
-        while i < 8 { *buf = *buf + *buf; i+=1;}
+        while i < 8 {
+            let a = *buf;
+            let b = *buf;
+            *buf = a + b;
+            i+=1;
+        }
         let sample = @*buf;
         let r1     = of_str(sample);
         let mut r2 = of_str(init);