diff options
Diffstat (limited to 'src/test/ui/associated-types/associated-types-project-from-hrtb-in-fn.fixed')
-rw-r--r-- | src/test/ui/associated-types/associated-types-project-from-hrtb-in-fn.fixed | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/src/test/ui/associated-types/associated-types-project-from-hrtb-in-fn.fixed b/src/test/ui/associated-types/associated-types-project-from-hrtb-in-fn.fixed deleted file mode 100644 index bca69a976..000000000 --- a/src/test/ui/associated-types/associated-types-project-from-hrtb-in-fn.fixed +++ /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 as Foo<&isize>>::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() {} |