From 0eeeea9414d0ee5b22f6a33601282b46eca67bd6 Mon Sep 17 00:00:00 2001 From: Michael Goulet Date: Wed, 5 Oct 2022 03:52:38 +0000 Subject: [PATCH] Add broken test for AFIT with RPITIT --- .../in-trait/default-body-with-rpit.rs | 21 +++++++++++++++++++ .../in-trait/default-body-with-rpit.stderr | 12 +++++++++++ 2 files changed, 33 insertions(+) create mode 100644 src/test/ui/impl-trait/in-trait/default-body-with-rpit.rs create mode 100644 src/test/ui/impl-trait/in-trait/default-body-with-rpit.stderr diff --git a/src/test/ui/impl-trait/in-trait/default-body-with-rpit.rs b/src/test/ui/impl-trait/in-trait/default-body-with-rpit.rs new file mode 100644 index 00000000000..f0d407cd527 --- /dev/null +++ b/src/test/ui/impl-trait/in-trait/default-body-with-rpit.rs @@ -0,0 +1,21 @@ +// known-bug: #102688 +// edition:2021 + +#![feature(async_fn_in_trait, return_position_impl_trait_in_trait)] +#![allow(incomplete_features)] + +use std::fmt::Debug; + +trait Foo { + async fn baz(&self) -> impl Debug { + "" + } +} + +struct Bar; + +impl Foo for Bar {} + +fn main() { + let _ = Bar.baz(); +} diff --git a/src/test/ui/impl-trait/in-trait/default-body-with-rpit.stderr b/src/test/ui/impl-trait/in-trait/default-body-with-rpit.stderr new file mode 100644 index 00000000000..4529d301f9e --- /dev/null +++ b/src/test/ui/impl-trait/in-trait/default-body-with-rpit.stderr @@ -0,0 +1,12 @@ +error[E0720]: cannot resolve opaque type + --> $DIR/default-body-with-rpit.rs:10:28 + | +LL | async fn baz(&self) -> impl Debug { + | ^^^^^^^^^^ cannot resolve opaque type + | + = note: these returned values have a concrete "never" type + = help: this error will resolve once the item's body returns a concrete type + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0720`.