diff options
| author | Michael Goulet <michael@errs.io> | 2022-11-06 01:59:03 +0000 |
|---|---|---|
| committer | Michael Goulet <michael@errs.io> | 2022-11-06 02:07:34 +0000 |
| commit | 9a1043eac7dbd7177ce032c0f777b5ee2f636621 (patch) | |
| tree | 499edef51c9307b67b26c472d52fb59c0bdf293f /src | |
| parent | 1286ee23e4e2dec8c1696d3d76c6b26d97bbcf82 (diff) | |
Normalize signature when deducing closure signature from supertraits
Diffstat (limited to 'src')
| -rw-r--r-- | src/test/ui/closures/supertrait-hint-references-assoc-ty.rs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/test/ui/closures/supertrait-hint-references-assoc-ty.rs b/src/test/ui/closures/supertrait-hint-references-assoc-ty.rs new file mode 100644 index 00000000000..270bf14c35e --- /dev/null +++ b/src/test/ui/closures/supertrait-hint-references-assoc-ty.rs @@ -0,0 +1,17 @@ +// check-pass + +pub trait Fn0: Fn(i32) -> Self::Out { + type Out; +} + +impl<F: Fn(i32) -> ()> Fn0 for F { + type Out = (); +} + +pub fn closure_typer(_: impl Fn0) {} + +fn main() { + closure_typer(move |x| { + let _: i64 = x.into(); + }); +} |
