diff --git a/src/librustc/lint/context.rs b/src/librustc/lint/context.rs index 37f577da8bb..c65acd98385 100644 --- a/src/librustc/lint/context.rs +++ b/src/librustc/lint/context.rs @@ -188,17 +188,17 @@ impl LintStore { } } - pub fn register_late_pass(&mut self, - register_only: bool, - per_module: bool, - pass: LateLintPassObject) { + pub fn register_late_pass(&mut self, register_only: bool, pass: LateLintPassObject) { self.push_lints(&pass.get_lints()); if !register_only { - if per_module { - self.late_module_passes.push(pass); - } else { - self.late_passes.lock().as_mut().unwrap().push(pass); - } + self.late_passes.lock().as_mut().unwrap().push(pass); + } + } + + pub fn register_late_mod_pass(&mut self, register_only: bool, pass: LateLintPassObject) { + self.push_lints(&pass.get_lints()); + if !register_only { + self.late_module_passes.push(pass); } } diff --git a/src/librustc_interface/passes.rs b/src/librustc_interface/passes.rs index 2684650c3a9..544dd26d015 100644 --- a/src/librustc_interface/passes.rs +++ b/src/librustc_interface/passes.rs @@ -302,7 +302,7 @@ pub fn register_plugins<'a>( ls.register_early_pass(false, pass); } for pass in late_lint_passes { - ls.register_late_pass(false, false, pass); + ls.register_late_pass(false, pass); } for (name, (to, deprecated_name)) in lint_groups { diff --git a/src/librustc_lint/lib.rs b/src/librustc_lint/lib.rs index 2c39ba02451..5b190740c10 100644 --- a/src/librustc_lint/lib.rs +++ b/src/librustc_lint/lib.rs @@ -220,20 +220,13 @@ pub fn register_builtins(store: &mut lint::LintStore, no_interleave_lints: bool) if no_interleave_lints { pre_expansion_lint_passes!(register_passes, [register_pre_expansion_pass, []]); early_lint_passes!(register_passes, [register_early_pass, []]); - late_lint_passes!(register_passes, [register_late_pass, [false]]); - late_lint_mod_passes!(register_passes, [register_late_pass, [true]]); + late_lint_passes!(register_passes, [register_late_pass, []]); + late_lint_mod_passes!(register_passes, [register_late_mod_pass, []]); } else { - store.register_pre_expansion_pass( - true, - box BuiltinCombinedPreExpansionLintPass::new() - ); + store.register_pre_expansion_pass(true, box BuiltinCombinedPreExpansionLintPass::new()); store.register_early_pass(true, box BuiltinCombinedEarlyLintPass::new()); - store.register_late_pass( - true, true, box BuiltinCombinedModuleLateLintPass::new() - ); - store.register_late_pass( - true, false, box BuiltinCombinedLateLintPass::new() - ); + store.register_late_mod_pass(true, box BuiltinCombinedModuleLateLintPass::new()); + store.register_late_pass(true, box BuiltinCombinedLateLintPass::new()); } add_lint_group!("nonstandard_style", @@ -493,7 +486,7 @@ pub fn register_builtins(store: &mut lint::LintStore, no_interleave_lints: bool) pub fn register_internals(store: &mut lint::LintStore) { store.register_early_pass(false, box DefaultHashTypes::new()); store.register_early_pass(false, box LintPassImpl); - store.register_late_pass(false, false, box TyTyKind); + store.register_late_pass(false, box TyTyKind); store.register_group( false, "rustc::internal",