diff options
Diffstat (limited to 'src/test/ui/object-safety/object-safety-by-value-self.rs')
-rw-r--r-- | src/test/ui/object-safety/object-safety-by-value-self.rs | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/src/test/ui/object-safety/object-safety-by-value-self.rs b/src/test/ui/object-safety/object-safety-by-value-self.rs deleted file mode 100644 index c74a4d1cb..000000000 --- a/src/test/ui/object-safety/object-safety-by-value-self.rs +++ /dev/null @@ -1,46 +0,0 @@ -// Check that a trait with by-value self is considered object-safe. - -// build-pass (FIXME(62277): could be check-pass?) -#![allow(dead_code)] -#![allow(trivial_casts)] - -trait Bar { - fn bar(self); -} - -trait Baz { - fn baz(self: Self); -} - -trait Quux { - // Legal because of the where clause: - fn baz(self: Self) where Self : Sized; -} - -fn make_bar<T:Bar>(t: &T) -> &dyn Bar { - t // legal -} - -fn make_bar_explicit<T:Bar>(t: &T) -> &dyn Bar { - t as &dyn Bar // legal -} - -fn make_baz<T:Baz>(t: &T) -> &dyn Baz { - t // legal -} - -fn make_baz_explicit<T:Baz>(t: &T) -> &dyn Baz { - t as &dyn Baz // legal -} - -fn make_quux<T:Quux>(t: &T) -> &dyn Quux { - t -} - -fn make_quux_explicit<T:Quux>(t: &T) -> &dyn Quux { - t as &dyn Quux -} - - -fn main() { -} |