summaryrefslogtreecommitdiffstats
path: root/src/test/ui/unsized/issue-71659.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/unsized/issue-71659.rs')
-rw-r--r--src/test/ui/unsized/issue-71659.rs32
1 files changed, 0 insertions, 32 deletions
diff --git a/src/test/ui/unsized/issue-71659.rs b/src/test/ui/unsized/issue-71659.rs
deleted file mode 100644
index 3524ca02b..000000000
--- a/src/test/ui/unsized/issue-71659.rs
+++ /dev/null
@@ -1,32 +0,0 @@
-#![feature(unsize)]
-
-use std::marker::Unsize;
-
-pub trait CastTo<T: ?Sized>: Unsize<T> {
- fn cast_to(&self) -> &T;
-}
-
-impl<T: ?Sized, U: ?Sized + Unsize<T>> CastTo<T> for U {
- fn cast_to(&self) -> &T {
- self
- }
-}
-
-impl<T: ?Sized> Cast for T {}
-pub trait Cast {
- fn cast<T: ?Sized>(&self) -> &T
- where
- Self: CastTo<T>,
- {
- self
- }
-}
-
-pub trait Foo: CastTo<[i32]> {}
-impl Foo for [i32; 0] {}
-
-fn main() {
- let x: &dyn Foo = &[];
- let x = x.cast::<[i32]>();
- //~^ ERROR: the trait bound `dyn Foo: CastTo<[i32]>` is not satisfied
-}