@@ -52,7 +52,7 @@ use rustc_middle::metadata::ModChild;
5252use rustc_middle:: middle:: privacy:: EffectiveVisibilities ;
5353use rustc_middle:: query:: Providers ;
5454use rustc_middle:: span_bug;
55- use rustc_middle:: ty:: { self , MainDefinition , RegisteredTools , TyCtxt } ;
55+ use rustc_middle:: ty:: { self , MainDefinition , RegisteredTools , TyCtxt , TyCtxtFeed } ;
5656use rustc_middle:: ty:: { ResolverGlobalCtxt , ResolverOutputs } ;
5757use rustc_query_system:: ich:: StableHashingContext ;
5858use rustc_session:: lint:: builtin:: PRIVATE_MACRO_USE ;
@@ -1251,7 +1251,7 @@ impl<'tcx> Resolver<'_, 'tcx> {
12511251 def_kind : DefKind ,
12521252 expn_id : ExpnId ,
12531253 span : Span ,
1254- ) -> LocalDefId {
1254+ ) -> TyCtxtFeed < ' tcx , LocalDefId > {
12551255 let data = def_kind. def_path_data ( name) ;
12561256 assert ! (
12571257 !self . node_id_to_def_id. contains_key( & node_id) ,
@@ -1262,7 +1262,8 @@ impl<'tcx> Resolver<'_, 'tcx> {
12621262 ) ;
12631263
12641264 // FIXME: remove `def_span` body, pass in the right spans here and call `tcx.at().create_def()`
1265- let def_id = self . tcx . create_def ( parent, name, def_kind) . def_id ( ) ;
1265+ let feed = self . tcx . create_def ( parent, name, def_kind) ;
1266+ let def_id = feed. def_id ( ) ;
12661267
12671268 // Create the definition.
12681269 if expn_id != ExpnId :: root ( ) {
@@ -1283,7 +1284,7 @@ impl<'tcx> Resolver<'_, 'tcx> {
12831284 }
12841285 assert_eq ! ( self . def_id_to_node_id. push( node_id) , def_id) ;
12851286
1286- def_id
1287+ feed
12871288 }
12881289
12891290 fn item_generics_num_lifetimes ( & self , def_id : DefId ) -> usize {
0 commit comments