@@ -30,7 +30,8 @@ pub(crate) fn codegen_set_discriminant<'tcx>(
3030 . ty
3131 . discriminant_for_variant ( fx. tcx , variant_index)
3232 . unwrap ( )
33- . val ;
33+ . val
34+ . into ( ) ;
3435 let discr = CValue :: const_val ( fx, ptr. layout ( ) , to) ;
3536 ptr. write_cvalue ( fx, discr) ;
3637 }
@@ -49,7 +50,7 @@ pub(crate) fn codegen_set_discriminant<'tcx>(
4950 let niche = place. place_field ( fx, mir:: Field :: new ( tag_field) ) ;
5051 let niche_value = variant_index. as_u32 ( ) - niche_variants. start ( ) . as_u32 ( ) ;
5152 let niche_value = u128:: from ( niche_value) . wrapping_add ( niche_start) ;
52- let niche_llval = CValue :: const_val ( fx, niche. layout ( ) , niche_value) ;
53+ let niche_llval = CValue :: const_val ( fx, niche. layout ( ) , niche_value. into ( ) ) ;
5354 niche. write_cvalue ( fx, niche_llval) ;
5455 }
5556 }
@@ -77,7 +78,7 @@ pub(crate) fn codegen_get_discriminant<'tcx>(
7778 . ty
7879 . discriminant_for_variant ( fx. tcx , * index)
7980 . map_or ( u128:: from ( index. as_u32 ( ) ) , |discr| discr. val ) ;
80- return CValue :: const_val ( fx, dest_layout, discr_val) ;
81+ return CValue :: const_val ( fx, dest_layout, discr_val. into ( ) ) ;
8182 }
8283 Variants :: Multiple {
8384 tag,
0 commit comments