summaryrefslogtreecommitdiffstats
path: root/tests/ui/impl-trait/equality-in-canonical-query.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/impl-trait/equality-in-canonical-query.rs')
-rw-r--r--tests/ui/impl-trait/equality-in-canonical-query.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/ui/impl-trait/equality-in-canonical-query.rs b/tests/ui/impl-trait/equality-in-canonical-query.rs
new file mode 100644
index 000000000..672b1eeea
--- /dev/null
+++ b/tests/ui/impl-trait/equality-in-canonical-query.rs
@@ -0,0 +1,23 @@
+// issue: #116877
+// revisions: sized clone
+//[sized] check-pass
+
+//[clone] known-bug: #108498
+//[clone] failure-status: 101
+//[clone] normalize-stderr-test: "DefId\(.*?\]::" -> "DefId("
+//[clone] normalize-stderr-test: "(?m)note: .*$" -> ""
+//[clone] normalize-stderr-test: "(?m)^ *\d+: .*\n" -> ""
+//[clone] normalize-stderr-test: "(?m)^ *at .*\n" -> ""
+
+#[cfg(sized)] fn rpit() -> impl Sized {}
+#[cfg(clone)] fn rpit() -> impl Clone {}
+
+fn same_output<Out>(_: impl Fn() -> Out, _: impl Fn() -> Out) {}
+
+pub fn foo() -> impl Sized {
+ same_output(rpit, foo);
+ same_output(foo, rpit);
+ rpit()
+}
+
+fn main () {}