about summary refs log tree commit diff
path: root/compiler/rustc_resolve/src
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2023-12-20 14:03:00 +0000
committerbors <bors@rust-lang.org>2023-12-20 14:03:00 +0000
commit8fca8295cb89c4ebae6b5a8f8cfef1fc870dbeaa (patch)
tree24fb5b854356c6a53f0373dd13645ea1c2d1cb32 /compiler/rustc_resolve/src
parentf9d52dc594d08c10a75aff9be38a33e484ac3a58 (diff)
parent5e5d82e8033904cbae8d386983ced7b7b6e329b7 (diff)
downloadrust-8fca8295cb89c4ebae6b5a8f8cfef1fc870dbeaa.tar.gz
rust-8fca8295cb89c4ebae6b5a8f8cfef1fc870dbeaa.zip
Auto merge of #119136 - petrochenkov:feedvis3, r=WaffleLapkin
resolve: Eagerly feed closure visibilities

Also factor out all tcx-dependent operations performed for every created definition into `TyCtxt::create_def`.

Addresses https://github.com/rust-lang/rust/pull/118657#discussion_r1421424277
Diffstat (limited to 'compiler/rustc_resolve/src')
-rw-r--r--compiler/rustc_resolve/src/lib.rs5
1 files changed, 1 insertions, 4 deletions
diff --git a/compiler/rustc_resolve/src/lib.rs b/compiler/rustc_resolve/src/lib.rs
index 670fdcfb0d2..75ec594eb9b 100644
--- a/compiler/rustc_resolve/src/lib.rs
+++ b/compiler/rustc_resolve/src/lib.rs
@@ -1225,10 +1225,7 @@ impl<'tcx> Resolver<'_, 'tcx> {
         );
 
         // FIXME: remove `def_span` body, pass in the right spans here and call `tcx.at().create_def()`
-        let def_id = self.tcx.untracked().definitions.write().create_def(parent, data);
-
-        let feed = self.tcx.feed_local_def_id(def_id);
-        feed.def_kind(def_kind);
+        let def_id = self.tcx.create_def(parent, name, def_kind);
 
         // Create the definition.
         if expn_id != ExpnId::root() {