Skip to content

Commit 39f2f18

Browse files
committed
Make --json unused-extern deny/forbid level messages cause exit with error status
Closes: #96068
1 parent 2373599 commit 39f2f18

File tree

4 files changed

+10
-4
lines changed

4 files changed

+10
-4
lines changed

compiler/rustc_errors/src/lib.rs

+7-1
Original file line numberDiff line numberDiff line change
@@ -970,7 +970,13 @@ impl Handler {
970970
}
971971

972972
pub fn emit_unused_externs(&self, lint_level: &str, unused_externs: &[&str]) {
973-
self.inner.borrow_mut().emit_unused_externs(lint_level, unused_externs)
973+
let mut inner = self.inner.borrow_mut();
974+
975+
if lint_level == "deny" || lint_level == "forbid" {
976+
inner.bump_err_count();
977+
}
978+
979+
inner.emit_unused_externs(lint_level, unused_externs)
974980
}
975981

976982
pub fn update_unstable_expectation_id(

src/test/ui/unused-crate-deps/deny-cmdline-json.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Check for unused crate dep, no path
1+
// Check for unused crate dep, json event, deny, expect compile failure
22

33
// edition:2018
44
// compile-flags: -Dunused-crate-dependencies -Zunstable-options --json unused-externs --error-format=json

src/test/ui/unused-crate-deps/deny-cmdline.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Check for unused crate dep, no path
1+
// Check for unused crate dep, deny, expect failure
22

33
// edition:2018
44
// compile-flags: -Dunused-crate-dependencies

src/test/ui/unused-crate-deps/warn-cmdline-json.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Check for unused crate dep, no path
1+
// Check for unused crate dep, warn, json event, expect pass
22

33
// edition:2018
44
// check-pass

0 commit comments

Comments
 (0)