diff options
Diffstat (limited to 'src/test/ui/resolve/issue-85671.rs')
-rw-r--r-- | src/test/ui/resolve/issue-85671.rs | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/src/test/ui/resolve/issue-85671.rs b/src/test/ui/resolve/issue-85671.rs deleted file mode 100644 index 337ec307e..000000000 --- a/src/test/ui/resolve/issue-85671.rs +++ /dev/null @@ -1,37 +0,0 @@ -// check-pass - -// Some trait with a function that returns a slice: -pub trait AsSlice { - type Element; - fn as_slice(&self) -> &[Self::Element]; -} - -// Some type -pub struct A<Cont>(Cont); - -// Here we say that if A wraps a slice, then it implements AsSlice -impl<'a, Element> AsSlice for A<&'a [Element]> { - type Element = Element; - fn as_slice(&self) -> &[Self::Element] { - self.0 - } -} - -impl<Cont> A<Cont> { - // We want this function to work - pub fn failing<Coef>(&self) - where - Self: AsSlice<Element = Coef>, - { - self.as_ref_a().as_ref_a(); - } - - pub fn as_ref_a<Coef>(&self) -> A<&[<Self as AsSlice>::Element]> - where - Self: AsSlice<Element = Coef>, - { - A(self.as_slice()) - } -} - -fn main() {} |