diff options
| author | Camille GILLOT <gillot.camille@gmail.com> | 2021-07-31 22:50:43 +0200 |
|---|---|---|
| committer | Camille GILLOT <gillot.camille@gmail.com> | 2022-03-31 13:46:06 +0200 |
| commit | 4b598d3f75c1802cae68c6967fe7ea2a83e437ae (patch) | |
| tree | 0f996911bad3b4bfb07a7d18e607a29df54ce70f /compiler/rustc_interface/src | |
| parent | c10a1cebe785e2e47ae30228416e57f9db751e17 (diff) | |
| download | rust-4b598d3f75c1802cae68c6967fe7ea2a83e437ae.tar.gz rust-4b598d3f75c1802cae68c6967fe7ea2a83e437ae.zip | |
Stop emitting lints during lowering.
Diffstat (limited to 'compiler/rustc_interface/src')
| -rw-r--r-- | compiler/rustc_interface/src/passes.rs | 32 |
1 files changed, 15 insertions, 17 deletions
diff --git a/compiler/rustc_interface/src/passes.rs b/compiler/rustc_interface/src/passes.rs index ea4955e9a54..f2164bccc3e 100644 --- a/compiler/rustc_interface/src/passes.rs +++ b/compiler/rustc_interface/src/passes.rs @@ -487,12 +487,24 @@ pub fn configure_and_expand( } }); + sess.time("early_lint_checks", || { + let lint_buffer = Some(std::mem::take(resolver.lint_buffer())); + rustc_lint::check_ast_node( + sess, + false, + lint_store, + resolver.registered_tools(), + lint_buffer, + rustc_lint::BuiltinCombinedEarlyLintPass::new(), + &krate, + ) + }); + Ok(krate) } pub fn lower_to_hir<'res, 'tcx>( sess: &'tcx Session, - lint_store: &LintStore, resolver: &'res mut Resolver<'_>, krate: Rc<ast::Crate>, arena: &'tcx rustc_ast_lowering::Arena<'tcx>, @@ -506,19 +518,6 @@ pub fn lower_to_hir<'res, 'tcx>( arena, ); - sess.time("early_lint_checks", || { - let lint_buffer = Some(std::mem::take(resolver.lint_buffer())); - rustc_lint::check_ast_node( - sess, - false, - lint_store, - resolver.registered_tools(), - lint_buffer, - rustc_lint::BuiltinCombinedEarlyLintPass::new(), - &*krate, - ) - }); - // Drop AST to free memory sess.time("drop_ast", || std::mem::drop(krate)); @@ -852,9 +851,8 @@ pub fn create_global_ctxt<'tcx>( dep_graph.assert_ignored(); let sess = &compiler.session(); - let krate = resolver - .borrow_mut() - .access(|resolver| lower_to_hir(sess, &lint_store, resolver, krate, hir_arena)); + let krate = + resolver.borrow_mut().access(|resolver| lower_to_hir(sess, resolver, krate, hir_arena)); let resolver_outputs = BoxedResolver::to_resolver_outputs(resolver); let query_result_on_disk_cache = rustc_incremental::load_query_result_cache(sess); |
