@@ -33,9 +33,9 @@ use rustc_middle::middle::codegen_fn_attrs::CodegenFnAttrFlags;
3333use rustc_middle:: mir:: interpret:: truncate;
3434use rustc_middle:: mir:: { self , Field , GeneratorLayout } ;
3535use rustc_middle:: ty:: layout:: { self , IntegerExt , PrimitiveExt , TyAndLayout } ;
36- use rustc_middle:: ty:: subst:: { GenericArgKind , SubstsRef } ;
36+ use rustc_middle:: ty:: subst:: GenericArgKind ;
3737use rustc_middle:: ty:: Instance ;
38- use rustc_middle:: ty:: { self , AdtKind , ParamEnv , Ty , TyCtxt } ;
38+ use rustc_middle:: ty:: { self , AdtKind , GeneratorSubsts , ParamEnv , Ty , TyCtxt } ;
3939use rustc_middle:: { bug, span_bug} ;
4040use rustc_session:: config:: { self , DebugInfo } ;
4141use rustc_span:: symbol:: { Interner , Symbol } ;
@@ -1381,12 +1381,11 @@ impl EnumMemberDescriptionFactory<'ll, 'tcx> {
13811381
13821382 let variant_info_for = |index : VariantIdx | match self . enum_type . kind {
13831383 ty:: Adt ( adt, _) => VariantInfo :: Adt ( & adt. variants [ index] ) ,
1384- ty:: Generator ( def_id, substs , _) => {
1384+ ty:: Generator ( def_id, _ , _) => {
13851385 let ( generator_layout, generator_saved_local_names) =
13861386 generator_variant_info_data. as_ref ( ) . unwrap ( ) ;
13871387 VariantInfo :: Generator {
13881388 def_id,
1389- substs,
13901389 generator_layout : * generator_layout,
13911390 generator_saved_local_names,
13921391 variant_index : index,
@@ -1690,7 +1689,6 @@ enum VariantInfo<'a, 'tcx> {
16901689 Adt ( & ' tcx ty:: VariantDef ) ,
16911690 Generator {
16921691 def_id : DefId ,
1693- substs : SubstsRef < ' tcx > ,
16941692 generator_layout : & ' tcx GeneratorLayout < ' tcx > ,
16951693 generator_saved_local_names : & ' a IndexVec < mir:: GeneratorSavedLocal , Option < Symbol > > ,
16961694 variant_index : VariantIdx ,
@@ -1701,8 +1699,8 @@ impl<'tcx> VariantInfo<'_, 'tcx> {
17011699 fn map_struct_name < R > ( & self , f : impl FnOnce ( & str ) -> R ) -> R {
17021700 match self {
17031701 VariantInfo :: Adt ( variant) => f ( & variant. ident . as_str ( ) ) ,
1704- VariantInfo :: Generator { substs , variant_index, .. } => {
1705- f ( & substs . as_generator ( ) . variant_name ( * variant_index) )
1702+ VariantInfo :: Generator { variant_index, .. } => {
1703+ f ( & GeneratorSubsts :: variant_name ( * variant_index) )
17061704 }
17071705 }
17081706 }
@@ -1897,7 +1895,7 @@ fn prepare_enum_metadata(
18971895 . variant_range ( enum_def_id, tcx)
18981896 . map ( |variant_index| {
18991897 debug_assert_eq ! ( tcx. types. u32 , substs. as_generator( ) . discr_ty( tcx) ) ;
1900- let name = substs . as_generator ( ) . variant_name ( variant_index) ;
1898+ let name = GeneratorSubsts :: variant_name ( variant_index) ;
19011899 unsafe {
19021900 Some ( llvm:: LLVMRustDIBuilderCreateEnumerator (
19031901 DIB ( cx) ,
0 commit comments