about summary refs log tree commit diff
path: root/tests
diff options
context:
space:
mode:
authorGuillaume Gomez <guillaume1.gomez@gmail.com>2025-05-02 17:32:48 +0200
committerGuillaume Gomez <guillaume1.gomez@gmail.com>2025-05-14 19:05:05 +0200
commit0d25090d262cd506d4c4809f3a534d4d8b318870 (patch)
tree6bcfad9a4ede18a0eae141f89c94f9984b7bf930 /tests
parent7b06d2b776c401f66190509bd61804956426f9b0 (diff)
downloadrust-0d25090d262cd506d4c4809f3a534d4d8b318870.tar.gz
rust-0d25090d262cd506d4c4809f3a534d4d8b318870.zip
Improve code and apply suggestions
Diffstat (limited to 'tests')
-rw-r--r--tests/ui/useless_concat.fixed21
-rw-r--r--tests/ui/useless_concat.rs23
-rw-r--r--tests/ui/useless_concat.stderr74
3 files changed, 110 insertions, 8 deletions
diff --git a/tests/ui/useless_concat.fixed b/tests/ui/useless_concat.fixed
index 0400b1fcd6d..360b6f6ce82 100644
--- a/tests/ui/useless_concat.fixed
+++ b/tests/ui/useless_concat.fixed
@@ -1,6 +1,11 @@
+//@aux-build:proc_macros.rs
+
 #![warn(clippy::useless_concat)]
 #![allow(clippy::print_literal)]
 
+extern crate proc_macros;
+use proc_macros::{external, with_span};
+
 macro_rules! my_concat {
     ($fmt:literal $(, $e:expr)*) => {
         println!(concat!("ERROR: ", $fmt), $($e,)*);
@@ -9,6 +14,16 @@ macro_rules! my_concat {
 
 fn main() {
     let x = ""; //~ useless_concat
+    let x = "c"; //~ useless_concat
+    let x = "\""; //~ useless_concat
+    let x = "true"; //~ useless_concat
+    let x = "1"; //~ useless_concat
+    let x = "1.0000"; //~ useless_concat
+    let x = "1"; //~ useless_concat
+    let x = "1"; //~ useless_concat
+    let x = "1.0000"; //~ useless_concat
+    let x = "1.0000"; //~ useless_concat
+    let x = "a😀\n"; //~ useless_concat
     let x = "a"; //~ useless_concat
     let x = "1"; //~ useless_concat
     println!("b: {}", "a"); //~ useless_concat
@@ -17,4 +32,10 @@ fn main() {
     let local_i32 = 1;
     my_concat!("{}", local_i32);
     let x = concat!(file!(), "#L", line!());
+
+    external! { concat!(); }
+    with_span! {
+        span
+        concat!();
+    }
 }
diff --git a/tests/ui/useless_concat.rs b/tests/ui/useless_concat.rs
index 02e68568c10..338d20a48ae 100644
--- a/tests/ui/useless_concat.rs
+++ b/tests/ui/useless_concat.rs
@@ -1,6 +1,11 @@
+//@aux-build:proc_macros.rs
+
 #![warn(clippy::useless_concat)]
 #![allow(clippy::print_literal)]
 
+extern crate proc_macros;
+use proc_macros::{external, with_span};
+
 macro_rules! my_concat {
     ($fmt:literal $(, $e:expr)*) => {
         println!(concat!("ERROR: ", $fmt), $($e,)*);
@@ -9,7 +14,17 @@ macro_rules! my_concat {
 
 fn main() {
     let x = concat!(); //~ useless_concat
-    let x = concat!("a"); //~ useless_concat
+    let x = concat!('c'); //~ useless_concat
+    let x = concat!('"'); //~ useless_concat
+    let x = concat!(true); //~ useless_concat
+    let x = concat!(1f32); //~ useless_concat
+    let x = concat!(1.0000f32); //~ useless_concat
+    let x = concat!(1_f32); //~ useless_concat
+    let x = concat!(1_); //~ useless_concat
+    let x = concat!(1.0000_f32); //~ useless_concat
+    let x = concat!(1.0000_); //~ useless_concat
+    let x = concat!("a\u{1f600}\n"); //~ useless_concat
+    let x = concat!(r##"a"##); //~ useless_concat
     let x = concat!(1); //~ useless_concat
     println!("b: {}", concat!("a")); //~ useless_concat
     // Should not lint.
@@ -17,4 +32,10 @@ fn main() {
     let local_i32 = 1;
     my_concat!("{}", local_i32);
     let x = concat!(file!(), "#L", line!());
+
+    external! { concat!(); }
+    with_span! {
+        span
+        concat!();
+    }
 }
diff --git a/tests/ui/useless_concat.stderr b/tests/ui/useless_concat.stderr
index 63038b6660b..43d6d9ff579 100644
--- a/tests/ui/useless_concat.stderr
+++ b/tests/ui/useless_concat.stderr
@@ -1,5 +1,5 @@
 error: unneeded use of `concat!` macro
-  --> tests/ui/useless_concat.rs:11:13
+  --> tests/ui/useless_concat.rs:16:13
    |
 LL |     let x = concat!();
    |             ^^^^^^^^^ help: replace with: `""`
@@ -8,22 +8,82 @@ LL |     let x = concat!();
    = help: to override `-D warnings` add `#[allow(clippy::useless_concat)]`
 
 error: unneeded use of `concat!` macro
-  --> tests/ui/useless_concat.rs:12:13
+  --> tests/ui/useless_concat.rs:17:13
    |
-LL |     let x = concat!("a");
-   |             ^^^^^^^^^^^^ help: replace with: `"a"`
+LL |     let x = concat!('c');
+   |             ^^^^^^^^^^^^ help: replace with: `"c"`
 
 error: unneeded use of `concat!` macro
-  --> tests/ui/useless_concat.rs:13:13
+  --> tests/ui/useless_concat.rs:18:13
+   |
+LL |     let x = concat!('"');
+   |             ^^^^^^^^^^^^ help: replace with: `"\""`
+
+error: unneeded use of `concat!` macro
+  --> tests/ui/useless_concat.rs:19:13
+   |
+LL |     let x = concat!(true);
+   |             ^^^^^^^^^^^^^ help: replace with: `"true"`
+
+error: unneeded use of `concat!` macro
+  --> tests/ui/useless_concat.rs:20:13
+   |
+LL |     let x = concat!(1f32);
+   |             ^^^^^^^^^^^^^ help: replace with: `"1"`
+
+error: unneeded use of `concat!` macro
+  --> tests/ui/useless_concat.rs:21:13
+   |
+LL |     let x = concat!(1.0000f32);
+   |             ^^^^^^^^^^^^^^^^^^ help: replace with: `"1.0000"`
+
+error: unneeded use of `concat!` macro
+  --> tests/ui/useless_concat.rs:22:13
+   |
+LL |     let x = concat!(1_f32);
+   |             ^^^^^^^^^^^^^^ help: replace with: `"1"`
+
+error: unneeded use of `concat!` macro
+  --> tests/ui/useless_concat.rs:23:13
+   |
+LL |     let x = concat!(1_);
+   |             ^^^^^^^^^^^ help: replace with: `"1"`
+
+error: unneeded use of `concat!` macro
+  --> tests/ui/useless_concat.rs:24:13
+   |
+LL |     let x = concat!(1.0000_f32);
+   |             ^^^^^^^^^^^^^^^^^^^ help: replace with: `"1.0000"`
+
+error: unneeded use of `concat!` macro
+  --> tests/ui/useless_concat.rs:25:13
+   |
+LL |     let x = concat!(1.0000_);
+   |             ^^^^^^^^^^^^^^^^ help: replace with: `"1.0000"`
+
+error: unneeded use of `concat!` macro
+  --> tests/ui/useless_concat.rs:26:13
+   |
+LL |     let x = concat!("a\u{1f600}\n");
+   |             ^^^^^^^^^^^^^^^^^^^^^^^ help: replace with: `"a😀\n"`
+
+error: unneeded use of `concat!` macro
+  --> tests/ui/useless_concat.rs:27:13
+   |
+LL |     let x = concat!(r##"a"##);
+   |             ^^^^^^^^^^^^^^^^^ help: replace with: `"a"`
+
+error: unneeded use of `concat!` macro
+  --> tests/ui/useless_concat.rs:28:13
    |
 LL |     let x = concat!(1);
    |             ^^^^^^^^^^ help: replace with: `"1"`
 
 error: unneeded use of `concat!` macro
-  --> tests/ui/useless_concat.rs:14:23
+  --> tests/ui/useless_concat.rs:29:23
    |
 LL |     println!("b: {}", concat!("a"));
    |                       ^^^^^^^^^^^^ help: replace with: `"a"`
 
-error: aborting due to 4 previous errors
+error: aborting due to 14 previous errors