diff --git a/src/librustc_interface/passes.rs b/src/librustc_interface/passes.rs index d2bb2cdfaffa..66666a027c0d 100644 --- a/src/librustc_interface/passes.rs +++ b/src/librustc_interface/passes.rs @@ -764,7 +764,7 @@ pub fn create_global_ctxt<'tcx>( outputs: OutputFilenames, crate_name: &str, global_ctxt: &'tcx Once>, - arenas: &'tcx Once, + all_arenas: &'tcx AllArenas, local_arena: &'tcx WorkerLocal>, ) -> QueryContext<'tcx> { let sess = &compiler.session(); @@ -793,13 +793,12 @@ pub fn create_global_ctxt<'tcx>( callback(sess, &mut local_providers, &mut extern_providers); } - let arenas = arenas.init_locking(|| AllArenas::new()); let gcx = global_ctxt.init_locking(|| TyCtxt::create_global_ctxt( sess, lint_store, local_providers, extern_providers, - &arenas, + &all_arenas, local_arena, resolver_outputs, hir_map, diff --git a/src/librustc_interface/queries.rs b/src/librustc_interface/queries.rs index 581ebe9c00fe..7e8ba9f27025 100644 --- a/src/librustc_interface/queries.rs +++ b/src/librustc_interface/queries.rs @@ -72,9 +72,9 @@ impl Default for Query { pub struct Queries<'tcx> { compiler: &'tcx Compiler, gcx: Once>, - arenas: Once, forest: Once, + all_arenas: AllArenas, local_arena: WorkerLocal>, dep_graph_future: Query>, @@ -94,8 +94,8 @@ impl<'tcx> Queries<'tcx> { Queries { compiler, gcx: Once::new(), - arenas: Once::new(), forest: Once::new(), + all_arenas: AllArenas::new(), local_arena: WorkerLocal::new(|_| Arena::default()), dep_graph_future: Default::default(), parse: Default::default(), @@ -268,7 +268,7 @@ impl<'tcx> Queries<'tcx> { outputs, &crate_name, &self.gcx, - &self.arenas, + &self.all_arenas, &self.local_arena, )) })