about summary refs log tree commit diff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/ui/impl-trait/in-trait/default-method-binder-shifting.rs14
-rw-r--r--tests/ui/impl-trait/in-trait/default-method-binder-shifting.stderr11
2 files changed, 25 insertions, 0 deletions
diff --git a/tests/ui/impl-trait/in-trait/default-method-binder-shifting.rs b/tests/ui/impl-trait/in-trait/default-method-binder-shifting.rs
new file mode 100644
index 00000000000..5cf90c5d93c
--- /dev/null
+++ b/tests/ui/impl-trait/in-trait/default-method-binder-shifting.rs
@@ -0,0 +1,14 @@
+// check-pass
+
+#![feature(return_position_impl_trait_in_trait)]
+//~^ WARN the feature `return_position_impl_trait_in_trait` is incomplete
+
+trait Trait {
+    type Type;
+
+    // Check that we're adjusting bound vars correctly when installing the default
+    // method projection assumptions.
+    fn method(&self) -> impl Trait<Type = impl Sized + '_>;
+}
+
+fn main() {}
diff --git a/tests/ui/impl-trait/in-trait/default-method-binder-shifting.stderr b/tests/ui/impl-trait/in-trait/default-method-binder-shifting.stderr
new file mode 100644
index 00000000000..7c7ebcdb7e7
--- /dev/null
+++ b/tests/ui/impl-trait/in-trait/default-method-binder-shifting.stderr
@@ -0,0 +1,11 @@
+warning: the feature `return_position_impl_trait_in_trait` is incomplete and may not be safe to use and/or cause compiler crashes
+  --> $DIR/default-method-binder-shifting.rs:3:12
+   |
+LL | #![feature(return_position_impl_trait_in_trait)]
+   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+   |
+   = note: see issue #91611 <https://github.com/rust-lang/rust/issues/91611> for more information
+   = note: `#[warn(incomplete_features)]` on by default
+
+warning: 1 warning emitted
+