@@ -1340,7 +1340,7 @@ pub struct Resolver<'ra, 'tcx> {
13401340 /// Generic args to suggest for required params (e.g. `<'_>`, `<_, _>`), if any.
13411341 item_required_generic_args_suggestions : FxHashMap < LocalDefId , String > = default:: fx_hash_map ( ) ,
13421342 delegation_fn_sigs : LocalDefIdMap < DelegationFnSig > = Default :: default ( ) ,
1343- delegation_infos : LocalDefIdMap < DelegationInfo > = Default :: default ( ) ,
1343+ delegation_infos : LocalDefIdMap < ( DelegationInfo , DisambiguatorState ) > = Default :: default ( ) ,
13441344
13451345 main_def : Option < MainDefinition > = None ,
13461346 trait_impls : FxIndexMap < DefId , Vec < LocalDefId > > ,
@@ -1528,7 +1528,7 @@ impl<'tcx> Resolver<'_, 'tcx> {
15281528
15291529 if is_delegation {
15301530 let data = def_kind. def_path_data ( name) ;
1531- self . delegation_infos . entry ( parent) . or_default ( ) . disambig . next ( parent, data) ;
1531+ self . delegation_infos . entry ( parent) . or_default ( ) . 1 . next ( parent, data) ;
15321532 }
15331533
15341534 // FIXME: remove `def_span` body, pass in the right spans here and call `tcx.at().create_def()`
@@ -1867,7 +1867,11 @@ impl<'ra, 'tcx> Resolver<'ra, 'tcx> {
18671867 lifetime_elision_allowed : self . lifetime_elision_allowed ,
18681868 lint_buffer : Steal :: new ( self . lint_buffer ) ,
18691869 delegation_fn_sigs : self . delegation_fn_sigs ,
1870- delegation_infos : self . delegation_infos ,
1870+ delegation_infos : self
1871+ . delegation_infos
1872+ . into_items ( )
1873+ . map ( |( key, ( i, d) ) | ( key, ( i, Steal :: new ( d) ) ) )
1874+ . collect ( ) ,
18711875 } ;
18721876 ResolverOutputs { global_ctxt, ast_lowering }
18731877 }
0 commit comments