Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add an abstraction for custom query caches #68988

Merged
merged 10 commits into from
Feb 20, 2020
Merged

Conversation

Zoxc
Copy link
Contributor

@Zoxc Zoxc commented Feb 9, 2020

r? @eddyb

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Feb 9, 2020
@Zoxc
Copy link
Contributor Author

Zoxc commented Feb 9, 2020

@bors try @rust-timer queue

@rust-timer
Copy link
Collaborator

Awaiting bors try build completion

@bors
Copy link
Contributor

bors commented Feb 9, 2020

⌛ Trying commit 4a5857660c9c9e6e8b313f0c892da0d38551003f with merge 8e818dc3304a24344d80a0481fee50f50da399a1...

@rust-highfive
Copy link
Collaborator

The job dist-x86_64-linux-alt of your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2020-02-09T09:41:53.4162781Z    Compiling rustc_session v0.0.0 (/checkout/src/librustc_session)
2020-02-09T09:42:06.3318237Z    Compiling rustc_hir v0.0.0 (/checkout/src/librustc_hir)
2020-02-09T09:42:13.3145261Z    Compiling rustc_attr v0.0.0 (/checkout/src/librustc_attr)
2020-02-09T09:42:19.1772720Z    Compiling rustc_parse v0.0.0 (/checkout/src/librustc_parse)
2020-02-09T09:42:29.9947734Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::result::Result<(), rustc_errors::ErrorReported>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:29.9948363Z      |
2020-02-09T09:42:29.9948363Z      |
2020-02-09T09:42:29.9948708Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:29.9949199Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:29.9949568Z      |              |
2020-02-09T09:42:29.9950028Z      |              `std::cell::RefCell<std::option::Option<(std::result::Result<(), rustc_errors::ErrorReported>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:29.9950323Z      |
2020-02-09T09:42:29.9950845Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::result::Result<(), rustc_errors::ErrorReported>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:29.9951325Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::result::Result<(), rustc_errors::ErrorReported>>`
2020-02-09T09:42:29.9951737Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::analysis<'tcx>>`
2020-02-09T09:42:29.9952101Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:29.9952458Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:29.9952828Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:29.9953165Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:29.9953515Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:29.9954105Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:29.9954209Z 
2020-02-09T09:42:30.0006493Z error[E0277]: `std::cell::RefCell<std::option::Option<(&rustc_hir::hir::Crate<'_>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0007526Z      |
2020-02-09T09:42:30.0007526Z      |
2020-02-09T09:42:30.0008267Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.0008781Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0009145Z      |              |
2020-02-09T09:42:30.0009588Z      |              `std::cell::RefCell<std::option::Option<(&rustc_hir::hir::Crate<'_>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0009889Z      |
2020-02-09T09:42:30.0010389Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&rustc_hir::hir::Crate<'_>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.0010834Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&rustc_hir::hir::Crate<'_>>`
2020-02-09T09:42:30.0011264Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::hir_crate<'tcx>>`
2020-02-09T09:42:30.0011643Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.0012003Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0012378Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0012741Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0013082Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0013676Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0013763Z 
2020-02-09T09:42:30.0065640Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::vec::Vec<middle::cstore::NativeLibrary>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0066255Z      |
2020-02-09T09:42:30.0066255Z      |
2020-02-09T09:42:30.0066584Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.0067228Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0067616Z      |              |
2020-02-09T09:42:30.0068233Z      |              `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::vec::Vec<middle::cstore::NativeLibrary>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0068606Z      |
2020-02-09T09:42:30.0069136Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::vec::Vec<middle::cstore::NativeLibrary>>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.0069602Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::sync::Arc<std::vec::Vec<middle::cstore::NativeLibrary>>>`
2020-02-09T09:42:30.0070042Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::native_libraries<'tcx>>`
2020-02-09T09:42:30.0070416Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.0070769Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0071128Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0071462Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0071818Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0072220Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0072327Z 
2020-02-09T09:42:30.0224353Z error[E0277]: `std::cell::RefCell<std::option::Option<(&lint::LintLevelMap, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0224953Z      |
2020-02-09T09:42:30.0224953Z      |
2020-02-09T09:42:30.0225399Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.0226879Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0227488Z      |              |
2020-02-09T09:42:30.0247669Z      |              `std::cell::RefCell<std::option::Option<(&lint::LintLevelMap, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0247963Z      |
2020-02-09T09:42:30.0248633Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&lint::LintLevelMap, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.0249121Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&lint::LintLevelMap>`
2020-02-09T09:42:30.0249527Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::lint_levels<'tcx>>`
2020-02-09T09:42:30.0250039Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.0250367Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0250713Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0251050Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0251369Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0251762Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0251853Z 
2020-02-09T09:42:30.0252254Z error[E0277]: `std::cell::RefCell<std::option::Option<(bool, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0252756Z      |
2020-02-09T09:42:30.0252756Z      |
2020-02-09T09:42:30.0253066Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.0253556Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0253871Z      |              |
2020-02-09T09:42:30.0254244Z      |              `std::cell::RefCell<std::option::Option<(bool, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0254496Z      |
2020-02-09T09:42:30.0254948Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(bool, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.0255326Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<bool>`
2020-02-09T09:42:30.0255707Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::is_panic_runtime<'tcx>>`
2020-02-09T09:42:30.0256063Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.0256384Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0256718Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0257131Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0257659Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0258176Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0258259Z 
2020-02-09T09:42:30.0258696Z error[E0277]: `std::cell::RefCell<std::option::Option<(&std::collections::HashSet<rustc_hir::def_id::DefId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0259225Z      |
2020-02-09T09:42:30.0259225Z      |
2020-02-09T09:42:30.0259546Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.0260025Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0260360Z      |              |
2020-02-09T09:42:30.0260834Z      |              `std::cell::RefCell<std::option::Option<(&std::collections::HashSet<rustc_hir::def_id::DefId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0261116Z      |
2020-02-09T09:42:30.0261678Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&std::collections::HashSet<rustc_hir::def_id::DefId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.0262204Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&std::collections::HashSet<rustc_hir::def_id::DefId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>`
2020-02-09T09:42:30.0262606Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::mir_keys<'tcx>>`
2020-02-09T09:42:30.0262953Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.0263277Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0263612Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0263947Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0264262Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0264645Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0264725Z 
2020-02-09T09:42:30.0411636Z error[E0277]: `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, std::string::String, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0412365Z      |
2020-02-09T09:42:30.0412365Z      |
2020-02-09T09:42:30.0412694Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.0413365Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0413720Z      |              |
2020-02-09T09:42:30.0414272Z      |              `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, std::string::String, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0414595Z      |
2020-02-09T09:42:30.0415213Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, std::string::String, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.0415808Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&std::collections::HashMap<rustc_hir::def_id::DefId, std::string::String, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>`
2020-02-09T09:42:30.0416271Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::wasm_import_module_map<'tcx>>`
2020-02-09T09:42:30.0416649Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.0417004Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0417488Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0417873Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0418219Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0418805Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0418900Z 
2020-02-09T09:42:30.0543851Z error[E0277]: `std::cell::RefCell<std::option::Option<(&ty::CrateVariancesMap<'_>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0544626Z      |
2020-02-09T09:42:30.0544626Z      |
2020-02-09T09:42:30.0545775Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.0546401Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0546869Z      |              |
2020-02-09T09:42:30.0547303Z      |              `std::cell::RefCell<std::option::Option<(&ty::CrateVariancesMap<'_>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0547590Z      |
2020-02-09T09:42:30.0548092Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&ty::CrateVariancesMap<'_>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.0548526Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&ty::CrateVariancesMap<'_>>`
2020-02-09T09:42:30.0548944Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::crate_variances<'tcx>>`
2020-02-09T09:42:30.0549308Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.0549643Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0550010Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0550356Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0550870Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0551277Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0551364Z 
2020-02-09T09:42:30.0551779Z error[E0277]: `std::cell::RefCell<std::option::Option<(&ty::CratePredicatesMap<'_>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0552290Z      |
2020-02-09T09:42:30.0552290Z      |
2020-02-09T09:42:30.0552609Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.0553097Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0553427Z      |              |
2020-02-09T09:42:30.0553834Z      |              `std::cell::RefCell<std::option::Option<(&ty::CratePredicatesMap<'_>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0554099Z      |
2020-02-09T09:42:30.0554664Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&ty::CratePredicatesMap<'_>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.0555161Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&ty::CratePredicatesMap<'_>>`
2020-02-09T09:42:30.0555561Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::inferred_outlives_crate<'tcx>>`
2020-02-09T09:42:30.0555901Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.0556257Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0556632Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0556988Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0557501Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0557886Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0557967Z 
2020-02-09T09:42:30.0698567Z error[E0277]: `std::cell::RefCell<std::option::Option<((), dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0699626Z      |
2020-02-09T09:42:30.0699626Z      |
2020-02-09T09:42:30.0700402Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.0701128Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0701527Z      |              |
2020-02-09T09:42:30.0701973Z      |              `std::cell::RefCell<std::option::Option<((), dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0702432Z      |
2020-02-09T09:42:30.0702942Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<((), dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.0703370Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<()>`
2020-02-09T09:42:30.0703786Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::typeck_item_bodies<'tcx>>`
2020-02-09T09:42:30.0704145Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.0704635Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0705059Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0705422Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0706079Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0706503Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0706614Z 
2020-02-09T09:42:30.0707218Z error[E0277]: `std::cell::RefCell<std::option::Option<(&ty::CrateInherentImpls, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0707762Z      |
2020-02-09T09:42:30.0707762Z      |
2020-02-09T09:42:30.0708244Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.0708922Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0709313Z      |              |
2020-02-09T09:42:30.0709730Z      |              `std::cell::RefCell<std::option::Option<(&ty::CrateInherentImpls, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0710019Z      |
2020-02-09T09:42:30.0710532Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&ty::CrateInherentImpls, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.0710962Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&ty::CrateInherentImpls>`
2020-02-09T09:42:30.0711384Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::crate_inherent_impls<'tcx>>`
2020-02-09T09:42:30.0711752Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.0712112Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0712467Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0712836Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0713183Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0713587Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0713682Z 
2020-02-09T09:42:30.0865423Z error[E0277]: `std::cell::RefCell<std::option::Option<(&middle::privacy::AccessLevels, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0867700Z      |
2020-02-09T09:42:30.0867700Z      |
2020-02-09T09:42:30.0868006Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.0868670Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0869033Z      |              |
2020-02-09T09:42:30.0869464Z      |              `std::cell::RefCell<std::option::Option<(&middle::privacy::AccessLevels, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0869768Z      |
2020-02-09T09:42:30.0870291Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&middle::privacy::AccessLevels, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.0870746Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&middle::privacy::AccessLevels>`
2020-02-09T09:42:30.0871164Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::privacy_access_levels<'tcx>>`
2020-02-09T09:42:30.0871545Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.0871903Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0872256Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0872627Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0872979Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0873387Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0873491Z 
2020-02-09T09:42:30.0873962Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::collections::HashSet<rustc_hir::hir_id::HirId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0874560Z      |
2020-02-09T09:42:30.0874560Z      |
2020-02-09T09:42:30.0874882Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.0875413Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0875840Z      |              |
2020-02-09T09:42:30.0876392Z      |              `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::collections::HashSet<rustc_hir::hir_id::HirId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.0876801Z      |
2020-02-09T09:42:30.0877432Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::collections::HashSet<rustc_hir::hir_id::HirId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.0878019Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::sync::Arc<std::collections::HashSet<rustc_hir::hir_id::HirId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>>`
2020-02-09T09:42:30.0878465Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::reachable_set<'tcx>>`
2020-02-09T09:42:30.0879013Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.0879367Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0879718Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.0880055Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0880403Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.0880809Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.0880947Z 
2020-02-09T09:42:30.1062734Z error[E0277]: `std::cell::RefCell<std::option::Option<(&[(rustc_hir::def_id::CrateNum, middle::cstore::LinkagePreference)], dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1063343Z      |
2020-02-09T09:42:30.1063343Z      |
2020-02-09T09:42:30.1063685Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.1064195Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1064582Z      |              |
2020-02-09T09:42:30.1065074Z      |              `std::cell::RefCell<std::option::Option<(&[(rustc_hir::def_id::CrateNum, middle::cstore::LinkagePreference)], dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1065379Z      |
2020-02-09T09:42:30.1066253Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&[(rustc_hir::def_id::CrateNum, middle::cstore::LinkagePreference)], dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.1066951Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&[(rustc_hir::def_id::CrateNum, middle::cstore::LinkagePreference)]>`
2020-02-09T09:42:30.1067573Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::dylib_dependency_formats<'tcx>>`
2020-02-09T09:42:30.1068121Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.1068496Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1068891Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1069398Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1069763Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1070357Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1071674Z 
2020-02-09T09:42:30.1076730Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::vec::Vec<(rustc_session::config::CrateType, std::vec::Vec<middle::dependency_format::Linkage>)>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1077435Z      |
2020-02-09T09:42:30.1077435Z      |
2020-02-09T09:42:30.1077898Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.1078600Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1078943Z      |              |
2020-02-09T09:42:30.1079459Z      |              `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::vec::Vec<(rustc_session::config::CrateType, std::vec::Vec<middle::dependency_format::Linkage>)>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1079779Z      |
2020-02-09T09:42:30.1080551Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::vec::Vec<(rustc_session::config::CrateType, std::vec::Vec<middle::dependency_format::Linkage>)>>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.1081090Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::sync::Arc<std::vec::Vec<(rustc_session::config::CrateType, std::vec::Vec<middle::dependency_format::Linkage>)>>>`
2020-02-09T09:42:30.1081838Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::dependency_formats<'tcx>>`
2020-02-09T09:42:30.1082257Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.1082746Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1083130Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1083492Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1083836Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1084268Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1084357Z 
2020-02-09T09:42:30.1225469Z error[E0277]: `std::cell::RefCell<std::option::Option<(rustc_target::spec::PanicStrategy, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1226137Z      |
2020-02-09T09:42:30.1226137Z      |
2020-02-09T09:42:30.1226461Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.1226963Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1227299Z      |              |
2020-02-09T09:42:30.1227725Z      |              `std::cell::RefCell<std::option::Option<(rustc_target::spec::PanicStrategy, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1228012Z      |
2020-02-09T09:42:30.1228506Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(rustc_target::spec::PanicStrategy, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.1228952Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<rustc_target::spec::PanicStrategy>`
2020-02-09T09:42:30.1229360Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::panic_strategy<'tcx>>`
2020-02-09T09:42:30.1229710Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.1230340Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1230732Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1231105Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1231613Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1232101Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1232285Z 
2020-02-09T09:42:30.1239280Z error[E0277]: `std::cell::RefCell<std::option::Option<(rustc_session::config::SymbolManglingVersion, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1239884Z      |
2020-02-09T09:42:30.1239884Z      |
2020-02-09T09:42:30.1240381Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.1240889Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1241271Z      |              |
2020-02-09T09:42:30.1241736Z      |              `std::cell::RefCell<std::option::Option<(rustc_session::config::SymbolManglingVersion, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1242032Z      |
2020-02-09T09:42:30.1242743Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(rustc_session::config::SymbolManglingVersion, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.1243399Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<rustc_session::config::SymbolManglingVersion>`
2020-02-09T09:42:30.1243851Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::symbol_mangling_version<'tcx>>`
2020-02-09T09:42:30.1244230Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.1244574Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1244941Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1245307Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1245646Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1246335Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1246430Z 
2020-02-09T09:42:30.1387623Z error[E0277]: `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, middle::exported_symbols::SymbolExportLevel, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1388383Z      |
2020-02-09T09:42:30.1388383Z      |
2020-02-09T09:42:30.1388772Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.1389439Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1389938Z      |              |
2020-02-09T09:42:30.1390499Z      |              `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, middle::exported_symbols::SymbolExportLevel, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1390844Z      |
2020-02-09T09:42:30.1391488Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, middle::exported_symbols::SymbolExportLevel, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.1392316Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&std::collections::HashMap<rustc_hir::def_id::DefId, middle::exported_symbols::SymbolExportLevel, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>`
2020-02-09T09:42:30.1392784Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::reachable_non_generics<'tcx>>`
2020-02-09T09:42:30.1393155Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.1393518Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1393895Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1394259Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1394611Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1395057Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1395148Z 
2020-02-09T09:42:30.1395990Z error[E0277]: `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, std::collections::HashMap<&ty::List<ty::subst::GenericArg<'_>>, rustc_hir::def_id::CrateNum, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1396584Z      |
2020-02-09T09:42:30.1396584Z      |
2020-02-09T09:42:30.1397082Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.1397693Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1398090Z      |              |
2020-02-09T09:42:30.1398777Z      |              `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, std::collections::HashMap<&ty::List<ty::subst::GenericArg<'_>>, rustc_hir::def_id::CrateNum, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1399124Z      |
2020-02-09T09:42:30.1399907Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, std::collections::HashMap<&ty::List<ty::subst::GenericArg<'_>>, rustc_hir::def_id::CrateNum, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.1400827Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&std::collections::HashMap<rustc_hir::def_id::DefId, std::collections::HashMap<&ty::List<ty::subst::GenericArg<'_>>, rustc_hir::def_id::CrateNum, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>`
2020-02-09T09:42:30.1401308Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::upstream_monomorphizations<'tcx>>`
2020-02-09T09:42:30.1401649Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.1401992Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1402334Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1402653Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1402994Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1403396Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1403486Z 
2020-02-09T09:42:30.1587939Z error[E0277]: `std::cell::RefCell<std::option::Option<(&[middle::cstore::ForeignModule], dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1588548Z      |
2020-02-09T09:42:30.1588548Z      |
2020-02-09T09:42:30.1589047Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.1589902Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1590312Z      |              |
2020-02-09T09:42:30.1591028Z      |              `std::cell::RefCell<std::option::Option<(&[middle::cstore::ForeignModule], dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1591301Z      |
2020-02-09T09:42:30.1591842Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&[middle::cstore::ForeignModule], dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.1592305Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&[middle::cstore::ForeignModule]>`
2020-02-09T09:42:30.1592869Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::foreign_modules<'tcx>>`
2020-02-09T09:42:30.1593240Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.1593626Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1594009Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1594368Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1594737Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1595155Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1595272Z 
2020-02-09T09:42:30.1595726Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::option::Option<(rustc_hir::def_id::DefId, rustc_session::config::EntryFnType)>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1596310Z      |
2020-02-09T09:42:30.1596310Z      |
2020-02-09T09:42:30.1596649Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.1597195Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1597566Z      |              |
2020-02-09T09:42:30.1598246Z      |              `std::cell::RefCell<std::option::Option<(std::option::Option<(rustc_hir::def_id::DefId, rustc_session::config::EntryFnType)>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1598533Z      |
2020-02-09T09:42:30.1599196Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::option::Option<(rustc_hir::def_id::DefId, rustc_session::config::EntryFnType)>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.1599749Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::option::Option<(rustc_hir::def_id::DefId, rustc_session::config::EntryFnType)>>`
2020-02-09T09:42:30.1600272Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::entry_fn<'tcx>>`
2020-02-09T09:42:30.1601028Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.1601494Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1601845Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1602202Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1602564Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1602973Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1603078Z 
2020-02-09T09:42:30.1651875Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::option::Option<rustc_hir::def_id::DefId>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1652469Z      |
2020-02-09T09:42:30.1652469Z      |
2020-02-09T09:42:30.1652777Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.1653298Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1653657Z      |              |
2020-02-09T09:42:30.1654103Z      |              `std::cell::RefCell<std::option::Option<(std::option::Option<rustc_hir::def_id::DefId>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1654402Z      |
2020-02-09T09:42:30.1654935Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::option::Option<rustc_hir::def_id::DefId>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.1655394Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::option::Option<rustc_hir::def_id::DefId>>`
2020-02-09T09:42:30.1655830Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::plugin_registrar_fn<'tcx>>`
2020-02-09T09:42:30.1656333Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.1656741Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1657099Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1657718Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1658057Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1658444Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1658547Z 
2020-02-09T09:42:30.1826314Z error[E0277]: `std::cell::RefCell<std::option::Option<(rustc_session::session::CrateDisambiguator, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1826918Z      |
2020-02-09T09:42:30.1826918Z      |
2020-02-09T09:42:30.1827224Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.1827734Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1828096Z      |              |
2020-02-09T09:42:30.1828534Z      |              `std::cell::RefCell<std::option::Option<(rustc_session::session::CrateDisambiguator, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1828830Z      |
2020-02-09T09:42:30.1829376Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(rustc_session::session::CrateDisambiguator, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.1829838Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<rustc_session::session::CrateDisambiguator>`
2020-02-09T09:42:30.1830262Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::crate_disambiguator<'tcx>>`
2020-02-09T09:42:30.1830647Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.1831007Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1831366Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1831730Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1832088Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1832616Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1832741Z 
2020-02-09T09:42:30.1833147Z error[E0277]: `std::cell::RefCell<std::option::Option<(rustc_data_structures::svh::Svh, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1833829Z      |
2020-02-09T09:42:30.1833829Z      |
2020-02-09T09:42:30.1834156Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.1834685Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1835157Z      |              |
2020-02-09T09:42:30.1835550Z      |              `std::cell::RefCell<std::option::Option<(rustc_data_structures::svh::Svh, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.1835830Z      |
2020-02-09T09:42:30.1836322Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(rustc_data_structures::svh::Svh, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.1836758Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<rustc_data_structures::svh::Svh>`
2020-02-09T09:42:30.1837157Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::crate_hash<'tcx>>`
2020-02-09T09:42:30.1837523Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.1837883Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1838224Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.1838574Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1838918Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.1839318Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.1839420Z 
2020-02-09T09:42:30.2028607Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::option::Option<rustc_data_structures::svh::Svh>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.2029205Z      |
2020-02-09T09:42:30.2029205Z      |
2020-02-09T09:42:30.2029500Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.2030915Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.2033753Z      |              |
2020-02-09T09:42:30.2034331Z      |              `std::cell::RefCell<std::option::Option<(std::option::Option<rustc_data_structures::svh::Svh>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.2034876Z      |
2020-02-09T09:42:30.2035575Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::option::Option<rustc_data_structures::svh::Svh>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.2037073Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::option::Option<rustc_data_structures::svh::Svh>>`
2020-02-09T09:42:30.2037726Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::crate_host_hash<'tcx>>`
2020-02-09T09:42:30.2038292Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.2038798Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.2039122Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.2039464Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.2039800Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.2040184Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.2040295Z 
2020-02-09T09:42:30.2040820Z error[E0277]: `std::cell::RefCell<std::option::Option<(rustc_span::symbol::Symbol, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.2041361Z      |
2020-02-09T09:42:30.2041361Z      |
2020-02-09T09:42:30.2042018Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.2042712Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.2043076Z      |              |
2020-02-09T09:42:30.2043506Z      |              `std::cell::RefCell<std::option::Option<(rustc_span::symbol::Symbol, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.2043787Z      |
2020-02-09T09:42:30.2044589Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(rustc_span::symbol::Symbol, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.2045355Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<rustc_span::symbol::Symbol>`
2020-02-09T09:42:30.2046413Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::original_crate_name<'tcx>>`
2020-02-09T09:42:30.2046761Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.2047132Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.2047515Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.2048039Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.2048377Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.2048786Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.2048875Z 
2020-02-09T09:42:30.2049246Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::string::String, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.2050108Z      |
2020-02-09T09:42:30.2050108Z      |
2020-02-09T09:42:30.2050432Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.2051138Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.2051503Z      |              |
2020-02-09T09:42:30.2051940Z      |              `std::cell::RefCell<std::option::Option<(std::string::String, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.2052217Z      |
2020-02-09T09:42:30.2052745Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::string::String, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.2053906Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::string::String>`
2020-02-09T09:42:30.2054831Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::extra_filename<'tcx>>`
2020-02-09T09:42:30.2055670Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:42:30.2056018Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.2056470Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:42:30.2056833Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.2057172Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:42:30.2058016Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.2058105Z 
2020-02-09T09:42:30.2225396Z error[E0277]: `std::cell::RefCell<std::option::Option<(&[rustc_hir::def_id::DefId], dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.2225958Z      |
2020-02-09T09:42:30.2225958Z      |
2020-02-09T09:42:30.2226289Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:42:30.2226795Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:42:30.2227137Z      |              |
2020-02-09T09:42:30.2227574Z      |              `std::cell::RefCell<std::option::Option<(&[rustc_hir::def_id::DefId], dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:42:30.2227856Z      |
2020-02-09T09:42:30.2228357Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&[rustc_hir::def_id::DefId], dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:42:30.2228801Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&[rustc_hir::def_id::DefId]>`
---
2020-02-09T09:42:58.1414014Z   local time: Sun Feb  9 09:42:58 UTC 2020
2020-02-09T09:42:58.8480798Z   network time: Sun, 09 Feb 2020 09:42:58 GMT
2020-02-09T09:42:58.8480908Z == end clock drift check ==
2020-02-09T09:43:00.0030368Z 
2020-02-09T09:43:00.0117436Z ##[error]Bash exited with code '1'.
2020-02-09T09:43:00.0170304Z ##[section]Starting: Checkout rust-lang/rust@try to s
2020-02-09T09:43:00.0172081Z ==============================================================================
2020-02-09T09:43:00.0172153Z Task         : Get sources
2020-02-09T09:43:00.0172236Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@bors
Copy link
Contributor

bors commented Feb 9, 2020

💔 Test failed - checks-azure

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Feb 9, 2020
@rust-highfive
Copy link
Collaborator

The job mingw-check of your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2020-02-09T09:01:18.2564665Z ========================== Starting Command Output ===========================
2020-02-09T09:01:18.2581761Z [command]/bin/bash --noprofile --norc /home/vsts/work/_temp/bbbe8dff-0e89-43e5-aaaf-dc339e876705.sh
2020-02-09T09:01:18.2736554Z 
2020-02-09T09:01:18.2791302Z ##[section]Finishing: Disable git automatic line ending conversion
2020-02-09T09:01:18.2795538Z ##[section]Starting: Checkout rust-lang/rust@refs/pull/68988/merge to s
2020-02-09T09:01:18.2796813Z Task         : Get sources
2020-02-09T09:01:18.2796839Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.
2020-02-09T09:01:18.2796863Z Version      : 1.0.0
2020-02-09T09:01:18.2796887Z Author       : Microsoft
---
2020-02-09T09:01:19.7547216Z ##[command]git remote add origin https://github.com/rust-lang/rust
2020-02-09T09:01:19.7627664Z ##[command]git config gc.auto 0
2020-02-09T09:01:19.7692275Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2020-02-09T09:01:19.7739639Z ##[command]git config --get-all http.proxy
2020-02-09T09:01:19.7849249Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/68988/merge:refs/remotes/pull/68988/merge
---
2020-02-09T09:07:39.5334139Z     Checking rustc_parse v0.0.0 (/checkout/src/librustc_parse)
2020-02-09T09:07:41.5555225Z     Checking rustc_ast_passes v0.0.0 (/checkout/src/librustc_ast_passes)
2020-02-09T09:07:42.1928646Z     Checking rustc_expand v0.0.0 (/checkout/src/librustc_expand)
2020-02-09T09:07:43.5231661Z     Checking rustc_builtin_macros v0.0.0 (/checkout/src/librustc_builtin_macros)
2020-02-09T09:07:51.7382336Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::result::Result<(), rustc_errors::ErrorReported>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7384475Z      |
2020-02-09T09:07:51.7384475Z      |
2020-02-09T09:07:51.7385152Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7386009Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7388712Z      |              |
2020-02-09T09:07:51.7389689Z      |              `std::cell::RefCell<std::option::Option<(std::result::Result<(), rustc_errors::ErrorReported>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7390281Z      |
2020-02-09T09:07:51.7391390Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::result::Result<(), rustc_errors::ErrorReported>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7392194Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::result::Result<(), rustc_errors::ErrorReported>>`
2020-02-09T09:07:51.7392927Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::analysis<'tcx>>`
2020-02-09T09:07:51.7393436Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7393953Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7394451Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7395148Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7395658Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7396224Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7396453Z 
2020-02-09T09:07:51.7417465Z error[E0277]: `std::cell::RefCell<std::option::Option<(&rustc_hir::hir::Crate<'_>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7420785Z      |
2020-02-09T09:07:51.7420785Z      |
2020-02-09T09:07:51.7421346Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7421997Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7422510Z      |              |
2020-02-09T09:07:51.7423060Z      |              `std::cell::RefCell<std::option::Option<(&rustc_hir::hir::Crate<'_>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7423522Z      |
2020-02-09T09:07:51.7424164Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&rustc_hir::hir::Crate<'_>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7424723Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&rustc_hir::hir::Crate<'_>>`
2020-02-09T09:07:51.7425245Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::hir_crate<'tcx>>`
2020-02-09T09:07:51.7425765Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7426375Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7426959Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7427451Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7428099Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7428631Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7428864Z 
2020-02-09T09:07:51.7453787Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::vec::Vec<middle::cstore::NativeLibrary>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7454258Z      |
2020-02-09T09:07:51.7454258Z      |
2020-02-09T09:07:51.7454510Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7454926Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7455151Z      |              |
2020-02-09T09:07:51.7455495Z      |              `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::vec::Vec<middle::cstore::NativeLibrary>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7455708Z      |
2020-02-09T09:07:51.7456116Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::vec::Vec<middle::cstore::NativeLibrary>>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7456459Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::sync::Arc<std::vec::Vec<middle::cstore::NativeLibrary>>>`
2020-02-09T09:07:51.7456750Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::native_libraries<'tcx>>`
2020-02-09T09:07:51.7457031Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7457284Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7457564Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7457810Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7458279Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7458757Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7458802Z 
2020-02-09T09:07:51.7487627Z error[E0277]: `std::cell::RefCell<std::option::Option<(&lint::LintLevelMap, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7488263Z      |
2020-02-09T09:07:51.7488263Z      |
2020-02-09T09:07:51.7488514Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7488888Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7489133Z      |              |
2020-02-09T09:07:51.7489438Z      |              `std::cell::RefCell<std::option::Option<(&lint::LintLevelMap, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7489641Z      |
2020-02-09T09:07:51.7490030Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&lint::LintLevelMap, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7490329Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&lint::LintLevelMap>`
2020-02-09T09:07:51.7490800Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::lint_levels<'tcx>>`
2020-02-09T09:07:51.7491088Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7491351Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7491649Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7491910Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7492182Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7492503Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7496441Z 
2020-02-09T09:07:51.7523466Z error[E0277]: `std::cell::RefCell<std::option::Option<(bool, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7523946Z      |
2020-02-09T09:07:51.7523946Z      |
2020-02-09T09:07:51.7524198Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7524569Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7524934Z      |              |
2020-02-09T09:07:51.7525270Z      |              `std::cell::RefCell<std::option::Option<(bool, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7525568Z      |
2020-02-09T09:07:51.7525936Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(bool, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7526219Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<bool>`
2020-02-09T09:07:51.7526513Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::is_panic_runtime<'tcx>>`
2020-02-09T09:07:51.7526784Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7527036Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7527295Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7527608Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7527860Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7528174Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7531808Z 
2020-02-09T09:07:51.7559551Z error[E0277]: `std::cell::RefCell<std::option::Option<(&std::collections::HashSet<rustc_hir::def_id::DefId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7560507Z      |
2020-02-09T09:07:51.7560507Z      |
2020-02-09T09:07:51.7560865Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7561431Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7561708Z      |              |
2020-02-09T09:07:51.7562085Z      |              `std::cell::RefCell<std::option::Option<(&std::collections::HashSet<rustc_hir::def_id::DefId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7562304Z      |
2020-02-09T09:07:51.7562880Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&std::collections::HashSet<rustc_hir::def_id::DefId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7563495Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&std::collections::HashSet<rustc_hir::def_id::DefId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>`
2020-02-09T09:07:51.7563898Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::mir_keys<'tcx>>`
2020-02-09T09:07:51.7564186Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7564446Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7564733Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7564992Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7565245Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7565583Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7569432Z 
2020-02-09T09:07:51.7594076Z error[E0277]: `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, std::string::String, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7594564Z      |
2020-02-09T09:07:51.7594564Z      |
2020-02-09T09:07:51.7594841Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7595216Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7595471Z      |              |
2020-02-09T09:07:51.7595867Z      |              `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, std::string::String, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7596078Z      |
2020-02-09T09:07:51.7596538Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, std::string::String, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7596940Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&std::collections::HashMap<rustc_hir::def_id::DefId, std::string::String, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>`
2020-02-09T09:07:51.7597363Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::wasm_import_module_map<'tcx>>`
2020-02-09T09:07:51.7597685Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7597932Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7598302Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7598544Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7598785Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7599100Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7602737Z 
2020-02-09T09:07:51.7627810Z error[E0277]: `std::cell::RefCell<std::option::Option<(&ty::CrateVariancesMap<'_>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7628263Z      |
2020-02-09T09:07:51.7628263Z      |
2020-02-09T09:07:51.7628530Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7628909Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7629150Z      |              |
2020-02-09T09:07:51.7629463Z      |              `std::cell::RefCell<std::option::Option<(&ty::CrateVariancesMap<'_>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7629728Z      |
2020-02-09T09:07:51.7630113Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&ty::CrateVariancesMap<'_>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7630424Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&ty::CrateVariancesMap<'_>>`
2020-02-09T09:07:51.7630720Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::crate_variances<'tcx>>`
2020-02-09T09:07:51.7630989Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7631247Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7631500Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7631772Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7632139Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7632500Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7636078Z 
2020-02-09T09:07:51.7662603Z error[E0277]: `std::cell::RefCell<std::option::Option<(&ty::CratePredicatesMap<'_>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7663236Z      |
2020-02-09T09:07:51.7663236Z      |
2020-02-09T09:07:51.7663503Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7663883Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7664117Z      |              |
2020-02-09T09:07:51.7664425Z      |              `std::cell::RefCell<std::option::Option<(&ty::CratePredicatesMap<'_>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7664618Z      |
2020-02-09T09:07:51.7665020Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&ty::CratePredicatesMap<'_>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7665310Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&ty::CratePredicatesMap<'_>>`
2020-02-09T09:07:51.7665626Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::inferred_outlives_crate<'tcx>>`
2020-02-09T09:07:51.7665884Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7666148Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7666404Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7666673Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7666921Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7667230Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7670826Z 
2020-02-09T09:07:51.7696675Z error[E0277]: `std::cell::RefCell<std::option::Option<((), dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7697310Z      |
2020-02-09T09:07:51.7697310Z      |
2020-02-09T09:07:51.7697670Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7699043Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7699694Z      |              |
2020-02-09T09:07:51.7700306Z      |              `std::cell::RefCell<std::option::Option<((), dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7700668Z      |
2020-02-09T09:07:51.7701054Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<((), dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7701325Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<()>`
2020-02-09T09:07:51.7701628Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::typeck_item_bodies<'tcx>>`
2020-02-09T09:07:51.7701887Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7702159Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7702408Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7702649Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7702915Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7703206Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7706847Z 
2020-02-09T09:07:51.7732848Z error[E0277]: `std::cell::RefCell<std::option::Option<(&ty::CrateInherentImpls, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7733311Z      |
2020-02-09T09:07:51.7733311Z      |
2020-02-09T09:07:51.7733556Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7733938Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7734182Z      |              |
2020-02-09T09:07:51.7734500Z      |              `std::cell::RefCell<std::option::Option<(&ty::CrateInherentImpls, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7734713Z      |
2020-02-09T09:07:51.7735211Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&ty::CrateInherentImpls, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7735558Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&ty::CrateInherentImpls>`
2020-02-09T09:07:51.7735849Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::crate_inherent_impls<'tcx>>`
2020-02-09T09:07:51.7736218Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7736467Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7736741Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7736996Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7737259Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7737551Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7741196Z 
2020-02-09T09:07:51.7766421Z error[E0277]: `std::cell::RefCell<std::option::Option<(&middle::privacy::AccessLevels, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7766887Z      |
2020-02-09T09:07:51.7766887Z      |
2020-02-09T09:07:51.7767155Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7767531Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7767782Z      |              |
2020-02-09T09:07:51.7768094Z      |              `std::cell::RefCell<std::option::Option<(&middle::privacy::AccessLevels, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7768301Z      |
2020-02-09T09:07:51.7768689Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&middle::privacy::AccessLevels, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7768998Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&middle::privacy::AccessLevels>`
2020-02-09T09:07:51.7769302Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::privacy_access_levels<'tcx>>`
2020-02-09T09:07:51.7769576Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7769822Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7770222Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7770519Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7770782Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7771179Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7774749Z 
2020-02-09T09:07:51.7804012Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::collections::HashSet<rustc_hir::hir_id::HirId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7804505Z      |
2020-02-09T09:07:51.7804505Z      |
2020-02-09T09:07:51.7804754Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7805122Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7805367Z      |              |
2020-02-09T09:07:51.7805758Z      |              `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::collections::HashSet<rustc_hir::hir_id::HirId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7805976Z      |
2020-02-09T09:07:51.7806435Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::collections::HashSet<rustc_hir::hir_id::HirId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7806836Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::sync::Arc<std::collections::HashSet<rustc_hir::hir_id::HirId, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>>`
2020-02-09T09:07:51.7807152Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::reachable_set<'tcx>>`
2020-02-09T09:07:51.7807410Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7807673Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7807936Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7808176Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7808437Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7808851Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7812429Z 
2020-02-09T09:07:51.7841023Z error[E0277]: `std::cell::RefCell<std::option::Option<(&[(rustc_hir::def_id::CrateNum, middle::cstore::LinkagePreference)], dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7841665Z      |
2020-02-09T09:07:51.7841665Z      |
2020-02-09T09:07:51.7841917Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7842297Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7842545Z      |              |
2020-02-09T09:07:51.7842882Z      |              `std::cell::RefCell<std::option::Option<(&[(rustc_hir::def_id::CrateNum, middle::cstore::LinkagePreference)], dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7843100Z      |
2020-02-09T09:07:51.7843508Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&[(rustc_hir::def_id::CrateNum, middle::cstore::LinkagePreference)], dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7843856Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&[(rustc_hir::def_id::CrateNum, middle::cstore::LinkagePreference)]>`
2020-02-09T09:07:51.7844154Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::dylib_dependency_formats<'tcx>>`
2020-02-09T09:07:51.7844429Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7844673Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7844936Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7845185Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7845430Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7845741Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7849836Z 
2020-02-09T09:07:51.7876658Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::vec::Vec<(rustc_session::config::CrateType, std::vec::Vec<middle::dependency_format::Linkage>)>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7877107Z      |
2020-02-09T09:07:51.7877107Z      |
2020-02-09T09:07:51.7877515Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7877935Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7878326Z      |              |
2020-02-09T09:07:51.7878702Z      |              `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::vec::Vec<(rustc_session::config::CrateType, std::vec::Vec<middle::dependency_format::Linkage>)>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7878914Z      |
2020-02-09T09:07:51.7879362Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::sync::Arc<std::vec::Vec<(rustc_session::config::CrateType, std::vec::Vec<middle::dependency_format::Linkage>)>>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7879743Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::sync::Arc<std::vec::Vec<(rustc_session::config::CrateType, std::vec::Vec<middle::dependency_format::Linkage>)>>>`
2020-02-09T09:07:51.7880050Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::dependency_formats<'tcx>>`
2020-02-09T09:07:51.7880303Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7880555Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7880826Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7881077Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7881333Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7881628Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7885202Z 
2020-02-09T09:07:51.7909780Z error[E0277]: `std::cell::RefCell<std::option::Option<(rustc_target::spec::PanicStrategy, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7910212Z      |
2020-02-09T09:07:51.7910212Z      |
2020-02-09T09:07:51.7910480Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7910862Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7911100Z      |              |
2020-02-09T09:07:51.7911540Z      |              `std::cell::RefCell<std::option::Option<(rustc_target::spec::PanicStrategy, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7911796Z      |
2020-02-09T09:07:51.7912187Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(rustc_target::spec::PanicStrategy, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7912603Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<rustc_target::spec::PanicStrategy>`
2020-02-09T09:07:51.7912891Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::panic_strategy<'tcx>>`
2020-02-09T09:07:51.7913165Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7913418Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7913671Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7913947Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7914188Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7914498Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7918130Z 
2020-02-09T09:07:51.7943324Z error[E0277]: `std::cell::RefCell<std::option::Option<(rustc_session::config::SymbolManglingVersion, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7943774Z      |
2020-02-09T09:07:51.7943774Z      |
2020-02-09T09:07:51.7944230Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7944849Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7945108Z      |              |
2020-02-09T09:07:51.7945459Z      |              `std::cell::RefCell<std::option::Option<(rustc_session::config::SymbolManglingVersion, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7945677Z      |
2020-02-09T09:07:51.7946119Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(rustc_session::config::SymbolManglingVersion, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7946464Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<rustc_session::config::SymbolManglingVersion>`
2020-02-09T09:07:51.7946913Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::symbol_mangling_version<'tcx>>`
2020-02-09T09:07:51.7947429Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7947862Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7948236Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7948486Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7948729Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7949048Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7953239Z 
2020-02-09T09:07:51.7980434Z error[E0277]: `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, middle::exported_symbols::SymbolExportLevel, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7980901Z      |
2020-02-09T09:07:51.7980901Z      |
2020-02-09T09:07:51.7981160Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.7981544Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7981788Z      |              |
2020-02-09T09:07:51.7982208Z      |              `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, middle::exported_symbols::SymbolExportLevel, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.7982426Z      |
2020-02-09T09:07:51.7982911Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, middle::exported_symbols::SymbolExportLevel, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.7983327Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&std::collections::HashMap<rustc_hir::def_id::DefId, middle::exported_symbols::SymbolExportLevel, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>`
2020-02-09T09:07:51.7983655Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::reachable_non_generics<'tcx>>`
2020-02-09T09:07:51.7983910Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.7984290Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7984589Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.7984830Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7985204Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.7985496Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.7989072Z 
2020-02-09T09:07:51.8016431Z error[E0277]: `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, std::collections::HashMap<&ty::List<ty::subst::GenericArg<'_>>, rustc_hir::def_id::CrateNum, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8016907Z      |
2020-02-09T09:07:51.8016907Z      |
2020-02-09T09:07:51.8017162Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.8017559Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8017787Z      |              |
2020-02-09T09:07:51.8018517Z      |              `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, std::collections::HashMap<&ty::List<ty::subst::GenericArg<'_>>, rustc_hir::def_id::CrateNum, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8018738Z      |
2020-02-09T09:07:51.8019334Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&std::collections::HashMap<rustc_hir::def_id::DefId, std::collections::HashMap<&ty::List<ty::subst::GenericArg<'_>>, rustc_hir::def_id::CrateNum, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.8019845Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&std::collections::HashMap<rustc_hir::def_id::DefId, std::collections::HashMap<&ty::List<ty::subst::GenericArg<'_>>, rustc_hir::def_id::CrateNum, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>, std::hash::BuildHasherDefault<rustc_data_structures::fx::FxHasher>>>`
2020-02-09T09:07:51.8020170Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::upstream_monomorphizations<'tcx>>`
2020-02-09T09:07:51.8020565Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.8020864Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8021138Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8021484Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8021725Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8022038Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8025595Z 
2020-02-09T09:07:51.8049816Z error[E0277]: `std::cell::RefCell<std::option::Option<(&[middle::cstore::ForeignModule], dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8050234Z      |
2020-02-09T09:07:51.8050234Z      |
2020-02-09T09:07:51.8050509Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.8050879Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8051100Z      |              |
2020-02-09T09:07:51.8051444Z      |              `std::cell::RefCell<std::option::Option<(&[middle::cstore::ForeignModule], dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8051634Z      |
2020-02-09T09:07:51.8052040Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&[middle::cstore::ForeignModule], dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.8052337Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&[middle::cstore::ForeignModule]>`
2020-02-09T09:07:51.8052655Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::foreign_modules<'tcx>>`
2020-02-09T09:07:51.8052911Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.8053179Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8053444Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8053708Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8053950Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8054376Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8058099Z 
2020-02-09T09:07:51.8083404Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::option::Option<(rustc_hir::def_id::DefId, rustc_session::config::EntryFnType)>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8084022Z      |
2020-02-09T09:07:51.8084022Z      |
2020-02-09T09:07:51.8084287Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.8084671Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8084904Z      |              |
2020-02-09T09:07:51.8085430Z      |              `std::cell::RefCell<std::option::Option<(std::option::Option<(rustc_hir::def_id::DefId, rustc_session::config::EntryFnType)>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8085661Z      |
2020-02-09T09:07:51.8086314Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::option::Option<(rustc_hir::def_id::DefId, rustc_session::config::EntryFnType)>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.8086709Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::option::Option<(rustc_hir::def_id::DefId, rustc_session::config::EntryFnType)>>`
2020-02-09T09:07:51.8087036Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::entry_fn<'tcx>>`
2020-02-09T09:07:51.8087346Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.8087623Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8087900Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8088196Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8088619Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8088938Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8092883Z 
2020-02-09T09:07:51.8120766Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::option::Option<rustc_hir::def_id::DefId>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8121212Z      |
2020-02-09T09:07:51.8121212Z      |
2020-02-09T09:07:51.8121457Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.8121973Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8122288Z      |              |
2020-02-09T09:07:51.8122630Z      |              `std::cell::RefCell<std::option::Option<(std::option::Option<rustc_hir::def_id::DefId>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8122822Z      |
2020-02-09T09:07:51.8123245Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::option::Option<rustc_hir::def_id::DefId>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.8123547Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::option::Option<rustc_hir::def_id::DefId>>`
2020-02-09T09:07:51.8123860Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::plugin_registrar_fn<'tcx>>`
2020-02-09T09:07:51.8124113Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.8124374Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8124639Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8124910Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8125155Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8125634Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8129186Z 
2020-02-09T09:07:51.8154822Z error[E0277]: `std::cell::RefCell<std::option::Option<(rustc_session::session::CrateDisambiguator, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8155278Z      |
2020-02-09T09:07:51.8155278Z      |
2020-02-09T09:07:51.8155539Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.8155936Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8156159Z      |              |
2020-02-09T09:07:51.8156497Z      |              `std::cell::RefCell<std::option::Option<(rustc_session::session::CrateDisambiguator, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8156682Z      |
2020-02-09T09:07:51.8157217Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(rustc_session::session::CrateDisambiguator, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.8157559Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<rustc_session::session::CrateDisambiguator>`
2020-02-09T09:07:51.8157968Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::crate_disambiguator<'tcx>>`
2020-02-09T09:07:51.8158223Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.8158495Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8158757Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8159025Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8159281Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8159571Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8163100Z 
2020-02-09T09:07:51.8199518Z error[E0277]: `std::cell::RefCell<std::option::Option<(rustc_data_structures::svh::Svh, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8200384Z      |
2020-02-09T09:07:51.8200384Z      |
2020-02-09T09:07:51.8200895Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.8201702Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8201954Z      |              |
2020-02-09T09:07:51.8202580Z      |              `std::cell::RefCell<std::option::Option<(rustc_data_structures::svh::Svh, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8202966Z      |
2020-02-09T09:07:51.8203432Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(rustc_data_structures::svh::Svh, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.8204012Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<rustc_data_structures::svh::Svh>`
2020-02-09T09:07:51.8204367Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::crate_hash<'tcx>>`
2020-02-09T09:07:51.8204668Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.8205284Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8205629Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8206431Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8207128Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8207870Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8213115Z 
2020-02-09T09:07:51.8246318Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::option::Option<rustc_data_structures::svh::Svh>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8247588Z      |
2020-02-09T09:07:51.8247588Z      |
2020-02-09T09:07:51.8248222Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.8248703Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8248959Z      |              |
2020-02-09T09:07:51.8249549Z      |              `std::cell::RefCell<std::option::Option<(std::option::Option<rustc_data_structures::svh::Svh>, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8250141Z      |
2020-02-09T09:07:51.8251744Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::option::Option<rustc_data_structures::svh::Svh>, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.8252359Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::option::Option<rustc_data_structures::svh::Svh>>`
2020-02-09T09:07:51.8252912Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::crate_host_hash<'tcx>>`
2020-02-09T09:07:51.8253228Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.8253768Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8254252Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8254539Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8255187Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8256022Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8261573Z 
2020-02-09T09:07:51.8295263Z error[E0277]: `std::cell::RefCell<std::option::Option<(rustc_span::symbol::Symbol, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8295923Z      |
2020-02-09T09:07:51.8295923Z      |
2020-02-09T09:07:51.8296193Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.8296596Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8296858Z      |              |
2020-02-09T09:07:51.8297195Z      |              `std::cell::RefCell<std::option::Option<(rustc_span::symbol::Symbol, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8297433Z      |
2020-02-09T09:07:51.8297850Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(rustc_span::symbol::Symbol, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.8298404Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<rustc_span::symbol::Symbol>`
2020-02-09T09:07:51.8298737Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::original_crate_name<'tcx>>`
2020-02-09T09:07:51.8299038Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.8299304Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8299609Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8299879Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8300161Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8300482Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8306152Z 
2020-02-09T09:07:51.8337610Z error[E0277]: `std::cell::RefCell<std::option::Option<(std::string::String, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8338327Z      |
2020-02-09T09:07:51.8338327Z      |
2020-02-09T09:07:51.8338605Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.8339126Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8339428Z      |              |
2020-02-09T09:07:51.8339751Z      |              `std::cell::RefCell<std::option::Option<(std::string::String, dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8340075Z      |
2020-02-09T09:07:51.8340475Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(std::string::String, dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.8340993Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<std::string::String>`
2020-02-09T09:07:51.8341308Z      = note: required because it appears within the type `ty::query::plumbing::QueryState<'tcx, ty::query::queries::extra_filename<'tcx>>`
2020-02-09T09:07:51.8341602Z      = note: required because it appears within the type `ty::query::Queries<'tcx>`
2020-02-09T09:07:51.8341880Z      = note: required because it appears within the type `ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8342359Z      = note: required because it appears within the type `&'tcx ty::context::GlobalCtxt<'tcx>`
2020-02-09T09:07:51.8342639Z      = note: required because it appears within the type `ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8342920Z      = note: required because it appears within the type `&ty::context::TyCtxt<'tcx>`
2020-02-09T09:07:51.8343667Z      = note: required because it appears within the type `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8348195Z 
2020-02-09T09:07:51.8372276Z error[E0277]: `std::cell::RefCell<std::option::Option<(&[rustc_hir::def_id::DefId], dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8372750Z      |
2020-02-09T09:07:51.8372750Z      |
2020-02-09T09:07:51.8373007Z 2705 |             .for_each(|&body_id| f(self.hir().body_owner_def_id(body_id)));
2020-02-09T09:07:51.8373396Z      |              ^^^^^^^^ --------------------------------------------------- within this `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`
2020-02-09T09:07:51.8373643Z      |              |
2020-02-09T09:07:51.8373960Z      |              `std::cell::RefCell<std::option::Option<(&[rustc_hir::def_id::DefId], dep_graph::graph::DepNodeIndex)>>` cannot be shared between threads safely
2020-02-09T09:07:51.8374180Z      |
2020-02-09T09:07:51.8374573Z      = help: within `[closure@src/librustc/ty/mod.rs:2705:23: 2705:74 f:&F, self:&ty::context::TyCtxt<'tcx>]`, the trait `std::marker::Sync` is not implemented for `std::cell::RefCell<std::option::Option<(&[rustc_hir::def_id::DefId], dep_graph::graph::DepNodeIndex)>>`
2020-02-09T09:07:51.8375015Z      = note: required because it appears within the type `ty::query::caches::CrateNumCache<&[rustc_hir::def_id::DefId]>`

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@Zoxc
Copy link
Contributor Author

Zoxc commented Feb 9, 2020

@rust-timer build 8e818dc3304a24344d80a0481fee50f50da399a1

@rust-timer
Copy link
Collaborator

Queued 8e818dc3304a24344d80a0481fee50f50da399a1 with parent f8d830b, future comparison URL.

@@ -12,7 +13,9 @@ use rustc_span::{Span, DUMMY_SP};

/// The `Key` trait controls what types can legally be used as the key
/// for a query.
pub(super) trait Key {
pub trait Key {
type CacheSelector;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
type CacheSelector;
type CacheSelector = DefaultCacheSelector;

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Zoxc Is this actionable?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's unstable and I ran into some issues trying to use it.

@bors
Copy link
Contributor

bors commented Feb 14, 2020

☔ The latest upstream changes (presumably #68693) made this pull request unmergeable. Please resolve the merge conflicts.

@Zoxc
Copy link
Contributor Author

Zoxc commented Feb 14, 2020

@bors try @rust-timer queue

@rust-timer
Copy link
Collaborator

Awaiting bors try build completion

@bors
Copy link
Contributor

bors commented Feb 14, 2020

⌛ Trying commit 022416d with merge 5ea002a...

bors added a commit that referenced this pull request Feb 14, 2020
[WIP] Add an abstraction for custom query caches

r? @eddyb
@bors
Copy link
Contributor

bors commented Feb 14, 2020

☀️ Try build successful - checks-azure
Build commit: 5ea002a (5ea002ae792d01a65407a5e8b752a884b66c525e)

@rust-timer
Copy link
Collaborator

Queued 5ea002a with parent e168dcd, future comparison URL.

@rust-timer
Copy link
Collaborator

Finished benchmarking try commit 5ea002a, comparison URL.

@Zoxc
Copy link
Contributor Author

Zoxc commented Feb 15, 2020

@bors try @rust-timer queue

@rust-timer
Copy link
Collaborator

Awaiting bors try build completion

@bors
Copy link
Contributor

bors commented Feb 15, 2020

⌛ Trying commit 9247e87 with merge b5a4221...

bors added a commit that referenced this pull request Feb 15, 2020
[WIP] Add an abstraction for custom query caches

r? @eddyb
@Zoxc Zoxc changed the title [WIP] Add an abstraction for custom query caches Add an abstraction for custom query caches Feb 15, 2020
@@ -663,7 +665,8 @@ rustc_queries! {
/// associated types. This is almost always what you want,
/// unless you are doing MIR optimizations, in which case you
/// might want to use `reveal_all()` method to change modes.
query param_env(_: DefId) -> ty::ParamEnv<'tcx> {}
query param_env(_: DefId) -> ty::ParamEnv<'tcx> {
}
Copy link
Member

@eddyb eddyb Feb 19, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are these automatic formatting changes (i.e. caused by changing something in the macro), or can they be removed?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, this is just an incomplete reversion. I've rebased these away.

Copy link
Member

@eddyb eddyb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

r=me modulo nits

@Zoxc
Copy link
Contributor Author

Zoxc commented Feb 19, 2020

@bors r=eddyb p=1

cc @michaelwoerister

@bors
Copy link
Contributor

bors commented Feb 19, 2020

📌 Commit d924a25 has been approved by eddyb

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Feb 19, 2020
@eddyb
Copy link
Member

eddyb commented Feb 19, 2020

@bors rollup=never

@bors
Copy link
Contributor

bors commented Feb 19, 2020

⌛ Testing commit d924a25 with merge d563814...

@bors
Copy link
Contributor

bors commented Feb 20, 2020

☀️ Test successful - checks-azure
Approved by: eddyb
Pushing d563814 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Feb 20, 2020
@bors bors merged commit d563814 into rust-lang:master Feb 20, 2020
@Zoxc Zoxc deleted the query-caches branch February 20, 2020 11:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged-by-bors This PR was explicitly merged by bors. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants