diff options
Diffstat (limited to 'src/test/ui/overloaded/fixup-deref-mut.rs')
| -rw-r--r-- | src/test/ui/overloaded/fixup-deref-mut.rs | 50 |
1 files changed, 0 insertions, 50 deletions
diff --git a/src/test/ui/overloaded/fixup-deref-mut.rs b/src/test/ui/overloaded/fixup-deref-mut.rs deleted file mode 100644 index 6b2fd72b895..00000000000 --- a/src/test/ui/overloaded/fixup-deref-mut.rs +++ /dev/null @@ -1,50 +0,0 @@ -// run-pass - -#![allow(dead_code)] -// pretty-expanded FIXME #23616 - -use std::ops::{Deref, DerefMut}; - -// Generic unique/owned smaht pointer. -struct Own<T> { - value: *mut T -} - -impl<T> Deref for Own<T> { - type Target = T; - - fn deref<'a>(&'a self) -> &'a T { - unsafe { &*self.value } - } -} - -impl<T> DerefMut for Own<T> { - fn deref_mut<'a>(&'a mut self) -> &'a mut T { - unsafe { &mut *self.value } - } -} - -struct Point { - x: isize, - y: isize -} - -impl Point { - fn get(&mut self) -> (isize, isize) { - (self.x, self.y) - } -} - -fn test0(mut x: Own<Point>) { - let _ = x.get(); -} - -fn test1(mut x: Own<Own<Own<Point>>>) { - let _ = x.get(); -} - -fn test2(mut x: Own<Own<Own<Point>>>) { - let _ = (**x).get(); -} - -fn main() {} |
