From 3a4fe97052cf9d3f244fcab885e338a6384cefa6 Mon Sep 17 00:00:00 2001 From: Yuki Okushi Date: Fri, 9 Oct 2020 18:32:33 +0900 Subject: [PATCH] Add a regression test for issue-65581 --- src/test/ui/impl-trait/issues/issue-65581.rs | 33 ++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/test/ui/impl-trait/issues/issue-65581.rs diff --git a/src/test/ui/impl-trait/issues/issue-65581.rs b/src/test/ui/impl-trait/issues/issue-65581.rs new file mode 100644 index 000000000000..af65b79d3e83 --- /dev/null +++ b/src/test/ui/impl-trait/issues/issue-65581.rs @@ -0,0 +1,33 @@ +// check-pass + +#![allow(dead_code)] + +trait Trait1 { + fn f1(self) -> U; +} + +trait Trait2 { + type T; + type U: Trait2; + fn f2(f: impl FnOnce(&Self::U)); +} + +fn f3() -> impl Trait1 { + Struct1 +} + +struct Struct1; + +impl Trait1 for Struct1 { + fn f1(self) -> T::T { + unimplemented!() + } +} + +fn f4() { + T::f2(|_| { + f3::().f1(); + }); +} + +fn main() {}