@@ -33,9 +33,9 @@ use rustc_middle::middle::codegen_fn_attrs::CodegenFnAttrFlags;
33
33
use rustc_middle:: mir:: interpret:: truncate;
34
34
use rustc_middle:: mir:: { self , Field , GeneratorLayout } ;
35
35
use rustc_middle:: ty:: layout:: { self , IntegerExt , PrimitiveExt , TyAndLayout } ;
36
- use rustc_middle:: ty:: subst:: { GenericArgKind , SubstsRef } ;
36
+ use rustc_middle:: ty:: subst:: GenericArgKind ;
37
37
use 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 } ;
39
39
use rustc_middle:: { bug, span_bug} ;
40
40
use rustc_session:: config:: { self , DebugInfo } ;
41
41
use rustc_span:: symbol:: { Interner , Symbol } ;
@@ -1381,12 +1381,11 @@ impl EnumMemberDescriptionFactory<'ll, 'tcx> {
1381
1381
1382
1382
let variant_info_for = |index : VariantIdx | match self . enum_type . kind {
1383
1383
ty:: Adt ( adt, _) => VariantInfo :: Adt ( & adt. variants [ index] ) ,
1384
- ty:: Generator ( def_id, substs , _) => {
1384
+ ty:: Generator ( def_id, _ , _) => {
1385
1385
let ( generator_layout, generator_saved_local_names) =
1386
1386
generator_variant_info_data. as_ref ( ) . unwrap ( ) ;
1387
1387
VariantInfo :: Generator {
1388
1388
def_id,
1389
- substs,
1390
1389
generator_layout : * generator_layout,
1391
1390
generator_saved_local_names,
1392
1391
variant_index : index,
@@ -1690,7 +1689,6 @@ enum VariantInfo<'a, 'tcx> {
1690
1689
Adt ( & ' tcx ty:: VariantDef ) ,
1691
1690
Generator {
1692
1691
def_id : DefId ,
1693
- substs : SubstsRef < ' tcx > ,
1694
1692
generator_layout : & ' tcx GeneratorLayout < ' tcx > ,
1695
1693
generator_saved_local_names : & ' a IndexVec < mir:: GeneratorSavedLocal , Option < Symbol > > ,
1696
1694
variant_index : VariantIdx ,
@@ -1701,8 +1699,8 @@ impl<'tcx> VariantInfo<'_, 'tcx> {
1701
1699
fn map_struct_name < R > ( & self , f : impl FnOnce ( & str ) -> R ) -> R {
1702
1700
match self {
1703
1701
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) )
1706
1704
}
1707
1705
}
1708
1706
}
@@ -1897,7 +1895,7 @@ fn prepare_enum_metadata(
1897
1895
. variant_range ( enum_def_id, tcx)
1898
1896
. map ( |variant_index| {
1899
1897
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) ;
1901
1899
unsafe {
1902
1900
Some ( llvm:: LLVMRustDIBuilderCreateEnumerator (
1903
1901
DIB ( cx) ,
0 commit comments