diff options
Diffstat (limited to 'src/test/ui/generic-associated-types/issue-68642-broken-llvm-ir.rs')
-rw-r--r-- | src/test/ui/generic-associated-types/issue-68642-broken-llvm-ir.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/test/ui/generic-associated-types/issue-68642-broken-llvm-ir.rs b/src/test/ui/generic-associated-types/issue-68642-broken-llvm-ir.rs new file mode 100644 index 000000000..def0ad18f --- /dev/null +++ b/src/test/ui/generic-associated-types/issue-68642-broken-llvm-ir.rs @@ -0,0 +1,20 @@ +// Regression test for #68642 + +#![feature(generic_associated_types)] + +trait Fun { + type F<'a>: Fn() -> u32; + + fn callme<'a>(f: Self::F<'a>) -> u32 { + f() + } +} + +impl<T> Fun for T { + type F<'a> = Self; + //~^ ERROR expected a `Fn<()>` closure, found `T` +} + +fn main() { + <fn() -> usize>::callme(|| 1); +} |