1
Fork 0

typeck in parallel

This commit is contained in:
SparrowLii 2023-07-11 17:24:59 +08:00
parent 5b733e2bca
commit 50896c13db
11 changed files with 47 additions and 29 deletions

View file

@ -7,6 +7,10 @@ use rustc_session::lint;
pub fn check_crate(tcx: TyCtxt<'_>) {
let mut used_trait_imports: UnordSet<LocalDefId> = Default::default();
// FIXME: Use `tcx.hir().par_body_owners()` when we implement creating `DefId`s
// for anon constants during their parents' typeck.
// Doing so at current will produce queries cycle errors because it may typeck
// on anon constants directly.
for item_def_id in tcx.hir().body_owners() {
let imports = tcx.used_trait_imports(item_def_id);
debug!("GatherVisitor: item_def_id={:?} with imports {:#?}", item_def_id, imports);