diff options
Diffstat (limited to 'src/test/ui/associated-types/associated-types-project-from-hrtb-in-fn.rs')
-rw-r--r-- | src/test/ui/associated-types/associated-types-project-from-hrtb-in-fn.rs | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/src/test/ui/associated-types/associated-types-project-from-hrtb-in-fn.rs b/src/test/ui/associated-types/associated-types-project-from-hrtb-in-fn.rs deleted file mode 100644 index 1e23dd889..000000000 --- a/src/test/ui/associated-types/associated-types-project-from-hrtb-in-fn.rs +++ /dev/null @@ -1,37 +0,0 @@ -#![allow(dead_code, unused_variables)] -// run-rustfix -// Check projection of an associated type out of a higher-ranked trait-bound -// in the context of a function signature. - -pub trait Foo<T> { - type A; - - fn get(&self, t: T) -> Self::A; -} - -fn foo2<I : for<'x> Foo<&'x isize>>( - x: I::A) - //~^ ERROR cannot use the associated type of a trait with uninferred generic parameters -{ - // This case is illegal because we have to instantiate `'x`, and - // we don't know what region to instantiate it with. - // - // This could perhaps be made equivalent to the examples below, - // specifically for fn signatures. -} - -fn foo3<I : for<'x> Foo<&'x isize>>( - x: <I as Foo<&isize>>::A) -{ - // OK, in this case we spelled out the precise regions involved, though we left one of - // them anonymous. -} - -fn foo4<'a, I : for<'x> Foo<&'x isize>>( - x: <I as Foo<&'a isize>>::A) -{ - // OK, in this case we spelled out the precise regions involved. -} - - -pub fn main() {} |