export ptr_eq; #[doc( brief = "Determine if two shared boxes point to the same object" )] pure fn ptr_eq(a: @T, b: @T) -> bool { // FIXME: ptr::addr_of unsafe { let a_ptr: uint = unsafe::reinterpret_cast(a); let b_ptr: uint = unsafe::reinterpret_cast(b); ret a_ptr == b_ptr; } } #[test] fn test() { let x = @3; let y = @3; assert (ptr_eq::(x, x)); assert (ptr_eq::(y, y)); assert (!ptr_eq::(x, y)); assert (!ptr_eq::(y, x)); }