diff --git a/compiler/rustc_errors/src/lib.rs b/compiler/rustc_errors/src/lib.rs index 4e6ab0edf66..9f126d25a8d 100644 --- a/compiler/rustc_errors/src/lib.rs +++ b/compiler/rustc_errors/src/lib.rs @@ -970,7 +970,13 @@ impl Handler { } pub fn emit_unused_externs(&self, lint_level: &str, unused_externs: &[&str]) { - self.inner.borrow_mut().emit_unused_externs(lint_level, unused_externs) + let mut inner = self.inner.borrow_mut(); + + if lint_level == "deny" || lint_level == "forbid" { + inner.bump_err_count(); + } + + inner.emit_unused_externs(lint_level, unused_externs) } pub fn update_unstable_expectation_id( diff --git a/src/test/ui/unused-crate-deps/deny-cmdline-json.rs b/src/test/ui/unused-crate-deps/deny-cmdline-json.rs index 9a95780bd08..2b369dee5a0 100644 --- a/src/test/ui/unused-crate-deps/deny-cmdline-json.rs +++ b/src/test/ui/unused-crate-deps/deny-cmdline-json.rs @@ -1,4 +1,4 @@ -// Check for unused crate dep, no path +// Check for unused crate dep, json event, deny, expect compile failure // edition:2018 // compile-flags: -Dunused-crate-dependencies -Zunstable-options --json unused-externs --error-format=json diff --git a/src/test/ui/unused-crate-deps/deny-cmdline.rs b/src/test/ui/unused-crate-deps/deny-cmdline.rs index 17c6e1bf193..69e28b3319a 100644 --- a/src/test/ui/unused-crate-deps/deny-cmdline.rs +++ b/src/test/ui/unused-crate-deps/deny-cmdline.rs @@ -1,4 +1,4 @@ -// Check for unused crate dep, no path +// Check for unused crate dep, deny, expect failure // edition:2018 // compile-flags: -Dunused-crate-dependencies diff --git a/src/test/ui/unused-crate-deps/warn-cmdline-json.rs b/src/test/ui/unused-crate-deps/warn-cmdline-json.rs index a845fe6fd24..4826c0062d0 100644 --- a/src/test/ui/unused-crate-deps/warn-cmdline-json.rs +++ b/src/test/ui/unused-crate-deps/warn-cmdline-json.rs @@ -1,4 +1,4 @@ -// Check for unused crate dep, no path +// Check for unused crate dep, warn, json event, expect pass // edition:2018 // check-pass