]> git.lizzy.rs Git - rust.git/blobdiff - src/test/run-pass/overloaded-autoderef.rs
cleanup: s/impl Copy/#[derive(Copy)]/g
[rust.git] / src / test / run-pass / overloaded-autoderef.rs
index cd5903ad4e3b5f6d2ab949ee7787d3e597f1d87f..5831d500b83934497046f7a6ea397c1e1dddff1f 100644 (file)
@@ -8,11 +8,14 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+#![allow(unknown_features)]
+#![feature(box_syntax)]
+
 use std::cell::RefCell;
 use std::rc::Rc;
-use std::string::String;
+use std::num::ToPrimitive;
 
-#[deriving(PartialEq, Show)]
+#[derive(PartialEq, Show)]
 struct Point {
     x: int,
     y: int
@@ -25,18 +28,17 @@ pub fn main() {
     assert_eq!(point.x, 2);
     assert_eq!(point.y, 4);
 
-    let i = Rc::new(RefCell::new(2));
+    let i = Rc::new(RefCell::new(2i));
     let i_value = *i.borrow();
     *i.borrow_mut() = 5;
     assert_eq!((i_value, *i.borrow()), (2, 5));
 
     let s = Rc::new("foo".to_string());
-    assert!(s.equiv(&("foo")));
     assert_eq!(s.as_slice(), "foo");
 
     let mut_s = Rc::new(RefCell::new(String::from_str("foo")));
     mut_s.borrow_mut().push_str("bar");
-    // HACK assert_eq! would fail here because it stores the LHS and RHS in two locals.
+    // HACK assert_eq! would panic here because it stores the LHS and RHS in two locals.
     assert!(mut_s.borrow().as_slice() == "foobar");
     assert!(mut_s.borrow_mut().as_slice() == "foobar");
 
@@ -45,7 +47,7 @@ pub fn main() {
     p.borrow_mut().y += 3;
     assert_eq!(*p.borrow(), Point {x: 3, y: 5});
 
-    let v = Rc::new(RefCell::new([1, 2, 3]));
+    let v = Rc::new(RefCell::new([1i, 2, 3]));
     v.borrow_mut()[0] = 3;
     v.borrow_mut()[1] += 3;
     assert_eq!((v.borrow()[0], v.borrow()[1], v.borrow()[2]), (3, 5, 3));