diff --git a/src/test/ui/lint/force-warn/force-lint-allow-all-warnings.rs b/src/test/ui/lint/force-warn/allow-warnings.rs similarity index 59% rename from src/test/ui/lint/force-warn/force-lint-allow-all-warnings.rs rename to src/test/ui/lint/force-warn/allow-warnings.rs index 0e8a65a41173..6ee5ba679328 100644 --- a/src/test/ui/lint/force-warn/force-lint-allow-all-warnings.rs +++ b/src/test/ui/lint/force-warn/allow-warnings.rs @@ -1,3 +1,5 @@ +// --force-warn $LINT causes $LINT (which is warn-by-default) to warn +// despite allowing all warnings in module // compile-flags: --force-warn dead_code -Zunstable-options // check-pass diff --git a/src/test/ui/lint/force-warn/force-allowed-warning.stderr b/src/test/ui/lint/force-warn/allow-warnings.stderr similarity index 83% rename from src/test/ui/lint/force-warn/force-allowed-warning.stderr rename to src/test/ui/lint/force-warn/allow-warnings.stderr index fced147254e8..cac2b4e91890 100644 --- a/src/test/ui/lint/force-warn/force-allowed-warning.stderr +++ b/src/test/ui/lint/force-warn/allow-warnings.stderr @@ -1,5 +1,5 @@ warning: function is never used: `dead_function` - --> $DIR/force-allowed-warning.rs:6:4 + --> $DIR/allow-warnings.rs:8:4 | LL | fn dead_function() {} | ^^^^^^^^^^^^^ diff --git a/src/test/ui/lint/force-warn/force-allowed-by-default-lint.rs b/src/test/ui/lint/force-warn/allowed-by-default-lint.rs similarity index 75% rename from src/test/ui/lint/force-warn/force-allowed-by-default-lint.rs rename to src/test/ui/lint/force-warn/allowed-by-default-lint.rs index 4799429ea2c6..fd0b886d84db 100644 --- a/src/test/ui/lint/force-warn/force-allowed-by-default-lint.rs +++ b/src/test/ui/lint/force-warn/allowed-by-default-lint.rs @@ -1,3 +1,4 @@ +// --force-warn $LINT causes $LINT (which is allow-by-default) to warn // compile-flags: --force-warn elided_lifetimes_in_paths -Zunstable-options // check-pass diff --git a/src/test/ui/lint/force-warn/force-allowed-by-default-lint.stderr b/src/test/ui/lint/force-warn/allowed-by-default-lint.stderr similarity index 84% rename from src/test/ui/lint/force-warn/force-allowed-by-default-lint.stderr rename to src/test/ui/lint/force-warn/allowed-by-default-lint.stderr index 05513de81d1c..baa47cbb10fd 100644 --- a/src/test/ui/lint/force-warn/force-allowed-by-default-lint.stderr +++ b/src/test/ui/lint/force-warn/allowed-by-default-lint.stderr @@ -1,5 +1,5 @@ warning: hidden lifetime parameters in types are deprecated - --> $DIR/force-allowed-by-default-lint.rs:8:12 + --> $DIR/allowed-by-default-lint.rs:9:12 | LL | fn foo(x: &Foo) {} | ^^^- help: indicate the anonymous lifetime: `<'_>` diff --git a/src/test/ui/lint/force-warn/allowed-cli-deny-by-default-lint.rs b/src/test/ui/lint/force-warn/allowed-cli-deny-by-default-lint.rs new file mode 100644 index 000000000000..3fab9148392b --- /dev/null +++ b/src/test/ui/lint/force-warn/allowed-cli-deny-by-default-lint.rs @@ -0,0 +1,10 @@ +// --force-warn $LINT causes $LINT (which is deny-by-default) to warn +// despite $LINT being allowed on command line +// compile-flags: -A const_err --force-warn const_err -Zunstable-options +// check-pass + +const C: i32 = 1 / 0; +//~^ WARN any use of this value will cause an error +//~| WARN this was previously accepted by the compiler + +fn main() {} diff --git a/src/test/ui/lint/force-warn/force-allowed-deny-by-default-lint.stderr b/src/test/ui/lint/force-warn/allowed-cli-deny-by-default-lint.stderr similarity index 90% rename from src/test/ui/lint/force-warn/force-allowed-deny-by-default-lint.stderr rename to src/test/ui/lint/force-warn/allowed-cli-deny-by-default-lint.stderr index dd4f88a3b533..af6308f0d1b4 100644 --- a/src/test/ui/lint/force-warn/force-allowed-deny-by-default-lint.stderr +++ b/src/test/ui/lint/force-warn/allowed-cli-deny-by-default-lint.stderr @@ -1,5 +1,5 @@ warning: any use of this value will cause an error - --> $DIR/force-allowed-deny-by-default-lint.rs:5:16 + --> $DIR/allowed-cli-deny-by-default-lint.rs:6:16 | LL | const C: i32 = 1 / 0; | ---------------^^^^^- diff --git a/src/test/ui/lint/force-warn/force-allowed-deny-by-default-lint.rs b/src/test/ui/lint/force-warn/allowed-deny-by-default-lint.rs similarity index 68% rename from src/test/ui/lint/force-warn/force-allowed-deny-by-default-lint.rs rename to src/test/ui/lint/force-warn/allowed-deny-by-default-lint.rs index d066feba8698..82a584ac9726 100644 --- a/src/test/ui/lint/force-warn/force-allowed-deny-by-default-lint.rs +++ b/src/test/ui/lint/force-warn/allowed-deny-by-default-lint.rs @@ -1,3 +1,5 @@ +// --force-warn $LINT causes $LINT (which is deny-by-default) to warn +// despite $LINT being allowed in module // compile-flags: --force-warn const_err -Zunstable-options // check-pass diff --git a/src/test/ui/lint/force-warn/allowed-deny-by-default-lint.stderr b/src/test/ui/lint/force-warn/allowed-deny-by-default-lint.stderr new file mode 100644 index 000000000000..05656afd22d8 --- /dev/null +++ b/src/test/ui/lint/force-warn/allowed-deny-by-default-lint.stderr @@ -0,0 +1,14 @@ +warning: any use of this value will cause an error + --> $DIR/allowed-deny-by-default-lint.rs:7:16 + | +LL | const C: i32 = 1 / 0; + | ---------------^^^^^- + | | + | attempt to divide `1_i32` by zero + | + = note: requested on the command line with `--force-warn const-err` + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #71800 + +warning: 1 warning emitted + diff --git a/src/test/ui/lint/force-warn/force-lint-in-allowed-group.rs b/src/test/ui/lint/force-warn/allowed-group-warn-by-default-lint.rs similarity index 70% rename from src/test/ui/lint/force-warn/force-lint-in-allowed-group.rs rename to src/test/ui/lint/force-warn/allowed-group-warn-by-default-lint.rs index d8447bd23824..86ab12668a3e 100644 --- a/src/test/ui/lint/force-warn/force-lint-in-allowed-group.rs +++ b/src/test/ui/lint/force-warn/allowed-group-warn-by-default-lint.rs @@ -1,3 +1,5 @@ +// --force-warn $LINT causes $LINT (which is warn-by-default) to warn +// despite $LINT_GROUP (which contains $LINT) being allowed // compile-flags: --force-warn bare_trait_objects -Zunstable-options // check-pass diff --git a/src/test/ui/lint/force-warn/force-lint-in-allowed-group.stderr b/src/test/ui/lint/force-warn/allowed-group-warn-by-default-lint.stderr similarity index 90% rename from src/test/ui/lint/force-warn/force-lint-in-allowed-group.stderr rename to src/test/ui/lint/force-warn/allowed-group-warn-by-default-lint.stderr index c1ebdb9514bd..d945cc3347aa 100644 --- a/src/test/ui/lint/force-warn/force-lint-in-allowed-group.stderr +++ b/src/test/ui/lint/force-warn/allowed-group-warn-by-default-lint.stderr @@ -1,5 +1,5 @@ warning: trait objects without an explicit `dyn` are deprecated - --> $DIR/force-lint-in-allowed-group.rs:8:25 + --> $DIR/allowed-group-warn-by-default-lint.rs:10:25 | LL | pub fn function(_x: Box) {} | ^^^^^^^^^ help: use `dyn`: `dyn SomeTrait` diff --git a/src/test/ui/lint/force-warn/force-allowed-warning.rs b/src/test/ui/lint/force-warn/allowed-warn-by-default-lint.rs similarity index 59% rename from src/test/ui/lint/force-warn/force-allowed-warning.rs rename to src/test/ui/lint/force-warn/allowed-warn-by-default-lint.rs index 280de5064720..7204782a324e 100644 --- a/src/test/ui/lint/force-warn/force-allowed-warning.rs +++ b/src/test/ui/lint/force-warn/allowed-warn-by-default-lint.rs @@ -1,3 +1,5 @@ +// --force-warn $LINT causes $LINT (which is warn-by-default) to warn +// despite $LINT being allowed in module // compile-flags: --force-warn dead_code -Zunstable-options // check-pass diff --git a/src/test/ui/lint/force-warn/force-lint-allow-all-warnings.stderr b/src/test/ui/lint/force-warn/allowed-warn-by-default-lint.stderr similarity index 81% rename from src/test/ui/lint/force-warn/force-lint-allow-all-warnings.stderr rename to src/test/ui/lint/force-warn/allowed-warn-by-default-lint.stderr index 3305f2c02834..c46d7403fd02 100644 --- a/src/test/ui/lint/force-warn/force-lint-allow-all-warnings.stderr +++ b/src/test/ui/lint/force-warn/allowed-warn-by-default-lint.stderr @@ -1,5 +1,5 @@ warning: function is never used: `dead_function` - --> $DIR/force-lint-allow-all-warnings.rs:6:4 + --> $DIR/allowed-warn-by-default-lint.rs:8:4 | LL | fn dead_function() {} | ^^^^^^^^^^^^^ diff --git a/src/test/ui/lint/force-warn/force-warn-cap-lints-allow.rs b/src/test/ui/lint/force-warn/cap-lints-allow.rs similarity index 78% rename from src/test/ui/lint/force-warn/force-warn-cap-lints-allow.rs rename to src/test/ui/lint/force-warn/cap-lints-allow.rs index e10d161e7c62..de3a1bd8dd71 100644 --- a/src/test/ui/lint/force-warn/force-warn-cap-lints-allow.rs +++ b/src/test/ui/lint/force-warn/cap-lints-allow.rs @@ -1,3 +1,5 @@ +// --force-warn $LINT casuses $LINT to warn despite --cap-lints +// set to allow // compile-flags: --cap-lints allow --force-warn bare_trait_objects -Zunstable-options // check-pass diff --git a/src/test/ui/lint/force-warn/force-warn-cap-lints-allow.stderr b/src/test/ui/lint/force-warn/cap-lints-allow.stderr similarity index 91% rename from src/test/ui/lint/force-warn/force-warn-cap-lints-allow.stderr rename to src/test/ui/lint/force-warn/cap-lints-allow.stderr index 8514956af743..f3ae16b5657f 100644 --- a/src/test/ui/lint/force-warn/force-warn-cap-lints-allow.stderr +++ b/src/test/ui/lint/force-warn/cap-lints-allow.stderr @@ -1,5 +1,5 @@ warning: trait objects without an explicit `dyn` are deprecated - --> $DIR/force-warn-cap-lints-allow.rs:6:25 + --> $DIR/cap-lints-allow.rs:8:25 | LL | pub fn function(_x: Box) {} | ^^^^^^^^^ help: use `dyn`: `dyn SomeTrait` diff --git a/src/test/ui/lint/force-warn/force-warn-cap-lints-warn.rs b/src/test/ui/lint/force-warn/cap-lints-warn-allowed-warn-by-default-lint.rs similarity index 76% rename from src/test/ui/lint/force-warn/force-warn-cap-lints-warn.rs rename to src/test/ui/lint/force-warn/cap-lints-warn-allowed-warn-by-default-lint.rs index 4afc0868608d..70fb90dc1992 100644 --- a/src/test/ui/lint/force-warn/force-warn-cap-lints-warn.rs +++ b/src/test/ui/lint/force-warn/cap-lints-warn-allowed-warn-by-default-lint.rs @@ -1,3 +1,5 @@ +// --force-warn $LINT_GROUP causes $LINT to warn despite $LINT being +// allowed in module and cap-lints set to warn // compile-flags: --cap-lints warn --force-warn rust-2021-compatibility -Zunstable-options // check-pass #![allow(ellipsis_inclusive_range_patterns)] diff --git a/src/test/ui/lint/force-warn/force-warn-cap-lints-warn.stderr b/src/test/ui/lint/force-warn/cap-lints-warn-allowed-warn-by-default-lint.stderr similarity index 88% rename from src/test/ui/lint/force-warn/force-warn-cap-lints-warn.stderr rename to src/test/ui/lint/force-warn/cap-lints-warn-allowed-warn-by-default-lint.stderr index 3a0227463e69..3dafaf7055fd 100644 --- a/src/test/ui/lint/force-warn/force-warn-cap-lints-warn.stderr +++ b/src/test/ui/lint/force-warn/cap-lints-warn-allowed-warn-by-default-lint.stderr @@ -1,5 +1,5 @@ warning: `...` range patterns are deprecated - --> $DIR/force-warn-cap-lints-warn.rs:8:10 + --> $DIR/cap-lints-warn-allowed-warn-by-default-lint.rs:10:10 | LL | 0...100 => true, | ^^^ help: use `..=` for an inclusive range diff --git a/src/test/ui/lint/force-warn/force-deny-by-default-lint.rs b/src/test/ui/lint/force-warn/deny-by-default-lint.rs similarity index 75% rename from src/test/ui/lint/force-warn/force-deny-by-default-lint.rs rename to src/test/ui/lint/force-warn/deny-by-default-lint.rs index 8331df02da76..b0a15cc2fba0 100644 --- a/src/test/ui/lint/force-warn/force-deny-by-default-lint.rs +++ b/src/test/ui/lint/force-warn/deny-by-default-lint.rs @@ -1,3 +1,4 @@ +// --force-warn $LINT causes $LINT (which is deny-by-default) to warn // compile-flags: --force-warn const_err -Zunstable-options // check-pass diff --git a/src/test/ui/lint/force-warn/force-deny-by-default-lint.stderr b/src/test/ui/lint/force-warn/deny-by-default-lint.stderr similarity index 91% rename from src/test/ui/lint/force-warn/force-deny-by-default-lint.stderr rename to src/test/ui/lint/force-warn/deny-by-default-lint.stderr index 68cd3a392f58..ef295f99e649 100644 --- a/src/test/ui/lint/force-warn/force-deny-by-default-lint.stderr +++ b/src/test/ui/lint/force-warn/deny-by-default-lint.stderr @@ -1,5 +1,5 @@ warning: any use of this value will cause an error - --> $DIR/force-deny-by-default-lint.rs:4:16 + --> $DIR/deny-by-default-lint.rs:5:16 | LL | const C: i32 = 1 / 0; | ---------------^^^^^- diff --git a/src/test/ui/lint/force-warn/force-lint-group-allow-all-warnings.rs b/src/test/ui/lint/force-warn/lint-group-allow-warnings.rs similarity index 58% rename from src/test/ui/lint/force-warn/force-lint-group-allow-all-warnings.rs rename to src/test/ui/lint/force-warn/lint-group-allow-warnings.rs index aaca59a2a2aa..e5dcd9a7ea16 100644 --- a/src/test/ui/lint/force-warn/force-lint-group-allow-all-warnings.rs +++ b/src/test/ui/lint/force-warn/lint-group-allow-warnings.rs @@ -1,3 +1,6 @@ +// --force-warn $LINT_GROUP causes $LINT in $LINT_GROUP to warn +// despite all warnings being allowed in module +// warn-by-default lint to warn // compile-flags: --force-warn nonstandard_style -Zunstable-options // check-pass diff --git a/src/test/ui/lint/force-warn/force-lint-group-allow-all-warnings.stderr b/src/test/ui/lint/force-warn/lint-group-allow-warnings.stderr similarity index 84% rename from src/test/ui/lint/force-warn/force-lint-group-allow-all-warnings.stderr rename to src/test/ui/lint/force-warn/lint-group-allow-warnings.stderr index 065a8f6a556a..dc7b1b7b98d0 100644 --- a/src/test/ui/lint/force-warn/force-lint-group-allow-all-warnings.stderr +++ b/src/test/ui/lint/force-warn/lint-group-allow-warnings.stderr @@ -1,5 +1,5 @@ warning: function `FUNCTION` should have a snake case name - --> $DIR/force-lint-group-allow-all-warnings.rs:6:8 + --> $DIR/lint-group-allow-warnings.rs:9:8 | LL | pub fn FUNCTION() {} | ^^^^^^^^ help: convert the identifier to snake case: `function` diff --git a/src/test/ui/lint/force-warn/lint-group-allowed-cli-warn-by-default-lint.rs b/src/test/ui/lint/force-warn/lint-group-allowed-cli-warn-by-default-lint.rs new file mode 100644 index 000000000000..4eb05b538b0b --- /dev/null +++ b/src/test/ui/lint/force-warn/lint-group-allowed-cli-warn-by-default-lint.rs @@ -0,0 +1,12 @@ +// --force-warn $LINT_GROUP causes $LINT (which is warn-by-default) to warn +// despite $LINT being allowed on command line +// compile-flags: -A bare-trait-objects --force-warn rust-2018-idioms -Zunstable-options +// check-pass + +pub trait SomeTrait {} + +pub fn function(_x: Box) {} +//~^ WARN trait objects without an explicit `dyn` are deprecated +//~| WARN this is accepted in the current edition + +fn main() {} diff --git a/src/test/ui/lint/force-warn/lint-group-allowed-cli-warn-by-default-lint.stderr b/src/test/ui/lint/force-warn/lint-group-allowed-cli-warn-by-default-lint.stderr new file mode 100644 index 000000000000..dc62521bf898 --- /dev/null +++ b/src/test/ui/lint/force-warn/lint-group-allowed-cli-warn-by-default-lint.stderr @@ -0,0 +1,12 @@ +warning: trait objects without an explicit `dyn` are deprecated + --> $DIR/lint-group-allowed-cli-warn-by-default-lint.rs:8:25 + | +LL | pub fn function(_x: Box) {} + | ^^^^^^^^^ help: use `dyn`: `dyn SomeTrait` + | + = note: `--force-warn bare-trait-objects` implied by `--force-warn rust-2018-idioms` + = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! + = note: for more information, see + +warning: 1 warning emitted + diff --git a/src/test/ui/lint/force-warn/force-warn-group.rs b/src/test/ui/lint/force-warn/lint-group-allowed-lint-group.rs similarity index 75% rename from src/test/ui/lint/force-warn/force-warn-group.rs rename to src/test/ui/lint/force-warn/lint-group-allowed-lint-group.rs index 0198610b78e1..dc13b2b24748 100644 --- a/src/test/ui/lint/force-warn/force-warn-group.rs +++ b/src/test/ui/lint/force-warn/lint-group-allowed-lint-group.rs @@ -1,3 +1,5 @@ +// --force-warn $LINT_GROUP causes $LINT to warn despite +// $LINT_GROUP being allowed in module // compile-flags: --force-warn rust_2018_idioms -Zunstable-options // check-pass diff --git a/src/test/ui/lint/force-warn/force-warn-group.stderr b/src/test/ui/lint/force-warn/lint-group-allowed-lint-group.stderr similarity index 91% rename from src/test/ui/lint/force-warn/force-warn-group.stderr rename to src/test/ui/lint/force-warn/lint-group-allowed-lint-group.stderr index 54bee452cdda..fcbae024eb60 100644 --- a/src/test/ui/lint/force-warn/force-warn-group.stderr +++ b/src/test/ui/lint/force-warn/lint-group-allowed-lint-group.stderr @@ -1,5 +1,5 @@ warning: trait objects without an explicit `dyn` are deprecated - --> $DIR/force-warn-group.rs:8:25 + --> $DIR/lint-group-allowed-lint-group.rs:10:25 | LL | pub fn function(_x: Box) {} | ^^^^^^^^^ help: use `dyn`: `dyn SomeTrait` diff --git a/src/test/ui/lint/force-warn/force-warn-group-allow-warning.rs b/src/test/ui/lint/force-warn/lint-group-allowed-warn-by-default-lint.rs similarity index 72% rename from src/test/ui/lint/force-warn/force-warn-group-allow-warning.rs rename to src/test/ui/lint/force-warn/lint-group-allowed-warn-by-default-lint.rs index 193ba2b6f0da..b7f79b3d4aa3 100644 --- a/src/test/ui/lint/force-warn/force-warn-group-allow-warning.rs +++ b/src/test/ui/lint/force-warn/lint-group-allowed-warn-by-default-lint.rs @@ -1,3 +1,5 @@ +// --force-warn $LINT_GROUP causes $LINT (which is warn-by-default) to warn +// despite $LINT being allowed in module // compile-flags: --force-warn rust-2018-idioms -Zunstable-options // check-pass diff --git a/src/test/ui/lint/force-warn/force-warn-group-allow-warning.stderr b/src/test/ui/lint/force-warn/lint-group-allowed-warn-by-default-lint.stderr similarity index 89% rename from src/test/ui/lint/force-warn/force-warn-group-allow-warning.stderr rename to src/test/ui/lint/force-warn/lint-group-allowed-warn-by-default-lint.stderr index 29eba6d635f9..1212ae083c23 100644 --- a/src/test/ui/lint/force-warn/force-warn-group-allow-warning.stderr +++ b/src/test/ui/lint/force-warn/lint-group-allowed-warn-by-default-lint.stderr @@ -1,5 +1,5 @@ warning: trait objects without an explicit `dyn` are deprecated - --> $DIR/force-warn-group-allow-warning.rs:8:25 + --> $DIR/lint-group-allowed-warn-by-default-lint.rs:10:25 | LL | pub fn function(_x: Box) {} | ^^^^^^^^^ help: use `dyn`: `dyn SomeTrait` diff --git a/src/test/ui/lint/force-warn/warn-by-default-lint-two-modules.rs b/src/test/ui/lint/force-warn/warn-by-default-lint-two-modules.rs new file mode 100644 index 000000000000..d2cb3417be68 --- /dev/null +++ b/src/test/ui/lint/force-warn/warn-by-default-lint-two-modules.rs @@ -0,0 +1,18 @@ +// --force-warn $LINT causes $LINT (which is warn-by-default) to warn +// despite being allowed in one submodule (but not the other) +// compile-flags: --force-warn dead_code -Zunstable-options +// check-pass + +mod one { + #![allow(dead_code)] + + fn dead_function() {} + //~^ WARN function is never used +} + +mod two { + fn dead_function() {} + //~^ WARN function is never used +} + +fn main() {} diff --git a/src/test/ui/lint/force-warn/warn-by-default-lint-two-modules.stderr b/src/test/ui/lint/force-warn/warn-by-default-lint-two-modules.stderr new file mode 100644 index 000000000000..2a3cf85a1e33 --- /dev/null +++ b/src/test/ui/lint/force-warn/warn-by-default-lint-two-modules.stderr @@ -0,0 +1,16 @@ +warning: function is never used: `dead_function` + --> $DIR/warn-by-default-lint-two-modules.rs:9:8 + | +LL | fn dead_function() {} + | ^^^^^^^^^^^^^ + | + = note: requested on the command line with `--force-warn dead-code` + +warning: function is never used: `dead_function` + --> $DIR/warn-by-default-lint-two-modules.rs:14:8 + | +LL | fn dead_function() {} + | ^^^^^^^^^^^^^ + +warning: 2 warnings emitted +