diff options
| -rw-r--r-- | compiler/rustc_middle/src/lint.rs | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/compiler/rustc_middle/src/lint.rs b/compiler/rustc_middle/src/lint.rs index b5b22e3f4b7..8d9e0dfd869 100644 --- a/compiler/rustc_middle/src/lint.rs +++ b/compiler/rustc_middle/src/lint.rs @@ -408,13 +408,10 @@ pub fn lint_level( // 2. If the corresponding `rustc_errors::Level` is warning, then that can be affected by // `-A warnings` or `--cap-lints=xxx` on the command line. In which case, the diagnostic // will be emitted if `can_emit_warnings` is true. - { - use rustc_errors::Level as ELevel; - if matches!(err_level, ELevel::ForceWarning(_) | ELevel::Error) - || sess.dcx().can_emit_warnings() - { - decorate(&mut err); - } + let skip = err_level == rustc_errors::Level::Warning && !sess.dcx().can_emit_warnings(); + + if !skip { + decorate(&mut err); } explain_lint_level_source(lint, level, src, &mut err); |
