about summary refs log tree commit diff
path: root/tests/ui/parser
diff options
context:
space:
mode:
authorTrevor Gross <t.gross35@gmail.com>2025-07-10 03:23:55 -0400
committerGitHub <noreply@github.com>2025-07-10 03:23:55 -0400
commit7ad90964dd5a9be0e0eff29a63499eae8e822ec8 (patch)
tree3bb15d7543159b3e18790f159633e0c250d34554 /tests/ui/parser
parenta2fe1bcf7024cdc2e522b65ede1de4f6f9187e55 (diff)
parent7c2cc2ce40f962edeb7badc50172c5b6ff280f12 (diff)
downloadrust-7ad90964dd5a9be0e0eff29a63499eae8e822ec8.tar.gz
rust-7ad90964dd5a9be0e0eff29a63499eae8e822ec8.zip
Rollup merge of #143298 - Kivooeo:tf23, r=tgross35
`tests/ui`: A New Order [23/N]

> [!NOTE]
>
> Intermediate commits are intended to help review, but will be squashed prior to merge.

Some `tests/ui/` housekeeping, to trim down number of tests directly under `tests/ui/`. Part of rust-lang/rust#133895.

r? ``@tgross35``
Diffstat (limited to 'tests/ui/parser')
-rw-r--r--tests/ui/parser/ufcs-return-unused-parens.fixed20
-rw-r--r--tests/ui/parser/ufcs-return-unused-parens.rs20
-rw-r--r--tests/ui/parser/ufcs-return-unused-parens.stderr19
3 files changed, 59 insertions, 0 deletions
diff --git a/tests/ui/parser/ufcs-return-unused-parens.fixed b/tests/ui/parser/ufcs-return-unused-parens.fixed
new file mode 100644
index 00000000000..811a853b769
--- /dev/null
+++ b/tests/ui/parser/ufcs-return-unused-parens.fixed
@@ -0,0 +1,20 @@
+//! Check that UFCS syntax works correctly in return statements
+//! without requiring workaround parentheses.
+//!
+//! Regression test for <https://github.com/rust-lang/rust/issues/37765>.
+
+//@ run-pass
+//@ run-rustfix
+
+#![allow(dead_code)]
+#![warn(unused_parens)]
+
+fn with_parens<T: ToString>(arg: T) -> String {
+    return <T as ToString>::to_string(&arg); //~ WARN unnecessary parentheses around `return` value
+}
+
+fn no_parens<T: ToString>(arg: T) -> String {
+    return <T as ToString>::to_string(&arg);
+}
+
+fn main() {}
diff --git a/tests/ui/parser/ufcs-return-unused-parens.rs b/tests/ui/parser/ufcs-return-unused-parens.rs
new file mode 100644
index 00000000000..6ea69ef9a26
--- /dev/null
+++ b/tests/ui/parser/ufcs-return-unused-parens.rs
@@ -0,0 +1,20 @@
+//! Check that UFCS syntax works correctly in return statements
+//! without requiring workaround parentheses.
+//!
+//! Regression test for <https://github.com/rust-lang/rust/issues/37765>.
+
+//@ run-pass
+//@ run-rustfix
+
+#![allow(dead_code)]
+#![warn(unused_parens)]
+
+fn with_parens<T: ToString>(arg: T) -> String {
+    return (<T as ToString>::to_string(&arg)); //~ WARN unnecessary parentheses around `return` value
+}
+
+fn no_parens<T: ToString>(arg: T) -> String {
+    return <T as ToString>::to_string(&arg);
+}
+
+fn main() {}
diff --git a/tests/ui/parser/ufcs-return-unused-parens.stderr b/tests/ui/parser/ufcs-return-unused-parens.stderr
new file mode 100644
index 00000000000..6c09e98e7b1
--- /dev/null
+++ b/tests/ui/parser/ufcs-return-unused-parens.stderr
@@ -0,0 +1,19 @@
+warning: unnecessary parentheses around `return` value
+  --> $DIR/ufcs-return-unused-parens.rs:13:12
+   |
+LL |     return (<T as ToString>::to_string(&arg));
+   |            ^                                ^
+   |
+note: the lint level is defined here
+  --> $DIR/ufcs-return-unused-parens.rs:10:9
+   |
+LL | #![warn(unused_parens)]
+   |         ^^^^^^^^^^^^^
+help: remove these parentheses
+   |
+LL -     return (<T as ToString>::to_string(&arg));
+LL +     return <T as ToString>::to_string(&arg);
+   |
+
+warning: 1 warning emitted
+