From 64d98f8ee037282c35007b64c2649055c56af1db Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 17 Apr 2024 14:19:03 +0200 Subject: Merging upstream version 1.68.2+dfsg1. Signed-off-by: Daniel Baumann --- .../object-safety-supertrait-mentions-Self.rs | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 tests/ui/object-safety/object-safety-supertrait-mentions-Self.rs (limited to 'tests/ui/object-safety/object-safety-supertrait-mentions-Self.rs') diff --git a/tests/ui/object-safety/object-safety-supertrait-mentions-Self.rs b/tests/ui/object-safety/object-safety-supertrait-mentions-Self.rs new file mode 100644 index 000000000..2445b33c8 --- /dev/null +++ b/tests/ui/object-safety/object-safety-supertrait-mentions-Self.rs @@ -0,0 +1,21 @@ +// Check that we correctly prevent users from making trait objects +// form traits that make use of `Self` in an argument or return position. + +trait Bar { + fn bar(&self, x: &T); +} + +trait Baz : Bar { +} + +fn make_bar>(t: &T) -> &dyn Bar { + t +} + +fn make_baz(t: &T) -> &dyn Baz { + //~^ ERROR E0038 + t +} + +fn main() { +} -- cgit v1.2.3