summaryrefslogtreecommitdiffstats
path: root/src/tools/clippy/tests/ui-internal
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-30 03:57:31 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-30 03:57:31 +0000
commitdc0db358abe19481e475e10c32149b53370f1a1c (patch)
treeab8ce99c4b255ce46f99ef402c27916055b899ee /src/tools/clippy/tests/ui-internal
parentReleasing progress-linux version 1.71.1+dfsg1-2~progress7.99u1. (diff)
downloadrustc-dc0db358abe19481e475e10c32149b53370f1a1c.tar.xz
rustc-dc0db358abe19481e475e10c32149b53370f1a1c.zip
Merging upstream version 1.72.1+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/tools/clippy/tests/ui-internal')
-rw-r--r--src/tools/clippy/tests/ui-internal/check_formulation.rs54
-rw-r--r--src/tools/clippy/tests/ui-internal/check_formulation.stderr19
-rw-r--r--src/tools/clippy/tests/ui-internal/custom_ice_message.rs2
-rw-r--r--src/tools/clippy/tests/ui-internal/custom_ice_message.stderr5
-rw-r--r--src/tools/clippy/tests/ui-internal/if_chain_style.rs7
-rw-r--r--src/tools/clippy/tests/ui-internal/if_chain_style.stderr20
6 files changed, 92 insertions, 15 deletions
diff --git a/src/tools/clippy/tests/ui-internal/check_formulation.rs b/src/tools/clippy/tests/ui-internal/check_formulation.rs
new file mode 100644
index 000000000..43fc99603
--- /dev/null
+++ b/src/tools/clippy/tests/ui-internal/check_formulation.rs
@@ -0,0 +1,54 @@
+#![warn(clippy::almost_standard_lint_formulation)]
+#![feature(rustc_private)]
+
+#[macro_use]
+extern crate rustc_middle;
+#[macro_use]
+extern crate rustc_session;
+extern crate rustc_lint;
+
+declare_tool_lint! {
+ /// # What it does
+ ///
+ /// Checks for usage of correct lint formulations
+ #[clippy::version = "pre 1.29.0"]
+ pub clippy::VALID,
+ Warn,
+ "One",
+ report_in_external_macro: true
+}
+
+declare_tool_lint! {
+ /// # What it does
+ /// Check for lint formulations that are correct
+ #[clippy::version = "pre 1.29.0"]
+ pub clippy::INVALID1,
+ Warn,
+ "One",
+ report_in_external_macro: true
+}
+
+declare_tool_lint! {
+ /// # What it does
+ /// Detects uses of incorrect formulations
+ #[clippy::version = "pre 1.29.0"]
+ pub clippy::INVALID2,
+ Warn,
+ "One",
+ report_in_external_macro: true
+}
+
+declare_tool_lint! {
+ /// # What it does
+ /// Detects uses of incorrect formulations (allowed with attribute)
+ #[allow(clippy::almost_standard_lint_formulation)]
+ #[clippy::version = "pre 1.29.0"]
+ pub clippy::ALLOWED_INVALID,
+ Warn,
+ "One",
+ report_in_external_macro: true
+}
+
+declare_lint_pass!(Pass => [VALID, INVALID1, INVALID2]);
+
+fn main() {}
diff --git a/src/tools/clippy/tests/ui-internal/check_formulation.stderr b/src/tools/clippy/tests/ui-internal/check_formulation.stderr
new file mode 100644
index 000000000..10eabca4b
--- /dev/null
+++ b/src/tools/clippy/tests/ui-internal/check_formulation.stderr
@@ -0,0 +1,19 @@
+error: non-standard lint formulation
+ --> $DIR/check_formulation.rs:23:5
+ |
+LL | /// Check for lint formulations that are correct
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+ |
+ = help: try using `Checks for` instead
+ = note: `-D clippy::almost-standard-lint-formulation` implied by `-D warnings`
+
+error: non-standard lint formulation
+ --> $DIR/check_formulation.rs:33:5
+ |
+LL | /// Detects uses of incorrect formulations
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+ |
+ = help: try using `Checks for` instead
+
+error: aborting due to 2 previous errors
+
diff --git a/src/tools/clippy/tests/ui-internal/custom_ice_message.rs b/src/tools/clippy/tests/ui-internal/custom_ice_message.rs
index 99ce70283..9b0db660c 100644
--- a/src/tools/clippy/tests/ui-internal/custom_ice_message.rs
+++ b/src/tools/clippy/tests/ui-internal/custom_ice_message.rs
@@ -3,7 +3,7 @@
//@normalize-stderr-test: "produce_ice.rs:\d*:\d*" -> "produce_ice.rs"
//@normalize-stderr-test: "', .*clippy_lints" -> "', clippy_lints"
//@normalize-stderr-test: "'rustc'" -> "'<unnamed>'"
-//@normalize-stderr-test: "running on .*" -> "running on <target>"
+//@normalize-stderr-test: "rustc 1\.\d+.* running on .*" -> "rustc <version> running on <target>"
//@normalize-stderr-test: "(?ms)query stack during panic:\n.*end of query stack\n" -> ""
#![deny(clippy::internal)]
diff --git a/src/tools/clippy/tests/ui-internal/custom_ice_message.stderr b/src/tools/clippy/tests/ui-internal/custom_ice_message.stderr
index 0fc385cd6..b88aeae2a 100644
--- a/src/tools/clippy/tests/ui-internal/custom_ice_message.stderr
+++ b/src/tools/clippy/tests/ui-internal/custom_ice_message.stderr
@@ -5,10 +5,9 @@ error: the compiler unexpectedly panicked. this is a bug.
note: we would appreciate a bug report: https://github.com/rust-lang/rust-clippy/issues/new
-note: rustc 1.71.0-nightly (521f4dae1 2023-05-19) running on <target>
+note: rustc <version> running on <target>
-note: compiler flags: -C prefer-dynamic -Z ui-testing
+note: compiler flags: -Z ui-testing
note: Clippy version: foo
-thread panicked while panicking. aborting.
diff --git a/src/tools/clippy/tests/ui-internal/if_chain_style.rs b/src/tools/clippy/tests/ui-internal/if_chain_style.rs
index b0d89e038..b462b20e0 100644
--- a/src/tools/clippy/tests/ui-internal/if_chain_style.rs
+++ b/src/tools/clippy/tests/ui-internal/if_chain_style.rs
@@ -1,5 +1,10 @@
#![warn(clippy::if_chain_style)]
-#![allow(clippy::no_effect, clippy::nonminimal_bool, clippy::missing_clippy_version_attribute)]
+#![allow(
+ clippy::needless_if,
+ clippy::no_effect,
+ clippy::nonminimal_bool,
+ clippy::missing_clippy_version_attribute
+)]
extern crate if_chain;
diff --git a/src/tools/clippy/tests/ui-internal/if_chain_style.stderr b/src/tools/clippy/tests/ui-internal/if_chain_style.stderr
index d8f1ffb21..b12df2786 100644
--- a/src/tools/clippy/tests/ui-internal/if_chain_style.stderr
+++ b/src/tools/clippy/tests/ui-internal/if_chain_style.stderr
@@ -1,5 +1,5 @@
error: this `if` can be part of the inner `if_chain!`
- --> $DIR/if_chain_style.rs:9:5
+ --> $DIR/if_chain_style.rs:14:5
|
LL | / if true {
LL | | let x = "";
@@ -11,14 +11,14 @@ LL | | }
| |_____^
|
help: this `let` statement can also be in the `if_chain!`
- --> $DIR/if_chain_style.rs:10:9
+ --> $DIR/if_chain_style.rs:15:9
|
LL | let x = "";
| ^^^^^^^^^^^
= note: `-D clippy::if-chain-style` implied by `-D warnings`
error: `if a && b;` should be `if a; if b;`
- --> $DIR/if_chain_style.rs:19:12
+ --> $DIR/if_chain_style.rs:24:12
|
LL | if true
| ____________^
@@ -27,25 +27,25 @@ LL | | && false;
| |____________________^
error: `let` expression should be inside `then { .. }`
- --> $DIR/if_chain_style.rs:24:9
+ --> $DIR/if_chain_style.rs:29:9
|
LL | let x = "";
| ^^^^^^^^^^^
error: this `if` can be part of the outer `if_chain!`
- --> $DIR/if_chain_style.rs:35:13
+ --> $DIR/if_chain_style.rs:40:13
|
LL | if true {}
| ^^^^^^^^^^
|
help: this `let` statement can also be in the `if_chain!`
- --> $DIR/if_chain_style.rs:33:13
+ --> $DIR/if_chain_style.rs:38:13
|
LL | let x = "";
| ^^^^^^^^^^^
error: `if_chain!` only has one `if`
- --> $DIR/if_chain_style.rs:29:5
+ --> $DIR/if_chain_style.rs:34:5
|
LL | / if_chain! {
LL | | // single `if` condition
@@ -59,13 +59,13 @@ LL | | }
= note: this error originates in the macro `__if_chain` which comes from the expansion of the macro `if_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
error: `let` expression should be above the `if_chain!`
- --> $DIR/if_chain_style.rs:40:9
+ --> $DIR/if_chain_style.rs:45:9
|
LL | let x = "";
| ^^^^^^^^^^^
error: this `if_chain!` can be merged with the outer `if_chain!`
- --> $DIR/if_chain_style.rs:46:13
+ --> $DIR/if_chain_style.rs:51:13
|
LL | / if_chain! {
LL | | if true;
@@ -75,7 +75,7 @@ LL | | }
| |_____________^
|
help: these `let` statements can also be in the `if_chain!`
- --> $DIR/if_chain_style.rs:43:13
+ --> $DIR/if_chain_style.rs:48:13
|
LL | / let x = "";
LL | | let x = "";