@@ -144,7 +144,7 @@ impl<'a, 'gcc, 'tcx> IntrinsicCallMethods<'tcx> for Builder<'a, 'gcc, 'tcx> {
144
144
sym:: volatile_load | sym:: unaligned_volatile_load => {
145
145
let tp_ty = fn_args. type_at ( 0 ) ;
146
146
let mut ptr = args[ 0 ] . immediate ( ) ;
147
- if let PassMode :: Cast ( ty, _ ) = & fn_abi. ret . mode {
147
+ if let PassMode :: Cast { cast : ty, .. } = & fn_abi. ret . mode {
148
148
ptr = self . pointercast ( ptr, self . type_ptr_to ( ty. gcc_type ( self ) ) ) ;
149
149
}
150
150
let load = self . volatile_load ( ptr. get_type ( ) , ptr) ;
@@ -353,7 +353,7 @@ impl<'a, 'gcc, 'tcx> IntrinsicCallMethods<'tcx> for Builder<'a, 'gcc, 'tcx> {
353
353
} ;
354
354
355
355
if !fn_abi. ret . is_ignore ( ) {
356
- if let PassMode :: Cast ( ty, _ ) = & fn_abi. ret . mode {
356
+ if let PassMode :: Cast { cast : ty, .. } = & fn_abi. ret . mode {
357
357
let ptr_llty = self . type_ptr_to ( ty. gcc_type ( self ) ) ;
358
358
let ptr = self . pointercast ( result. llval , ptr_llty) ;
359
359
self . store ( llval, ptr, result. align ) ;
@@ -449,7 +449,7 @@ impl<'gcc, 'tcx> ArgAbiExt<'gcc, 'tcx> for ArgAbi<'tcx, Ty<'tcx>> {
449
449
else if self . is_unsized_indirect ( ) {
450
450
bug ! ( "unsized `ArgAbi` must be handled through `store_fn_arg`" ) ;
451
451
}
452
- else if let PassMode :: Cast ( ref cast, _ ) = self . mode {
452
+ else if let PassMode :: Cast { ref cast, .. } = self . mode {
453
453
// FIXME(eddyb): Figure out when the simpler Store is safe, clang
454
454
// uses it for i16 -> {i8, i8}, but not for i24 -> {i8, i8, i8}.
455
455
let can_store_through_cast_ptr = false ;
@@ -514,7 +514,7 @@ impl<'gcc, 'tcx> ArgAbiExt<'gcc, 'tcx> for ArgAbi<'tcx, Ty<'tcx>> {
514
514
PassMode :: Indirect { meta_attrs : Some ( _) , .. } => {
515
515
OperandValue :: Ref ( next ( ) , Some ( next ( ) ) , self . layout . align . abi ) . store ( bx, dst) ;
516
516
} ,
517
- PassMode :: Direct ( _) | PassMode :: Indirect { meta_attrs : None , .. } | PassMode :: Cast ( .. ) => {
517
+ PassMode :: Direct ( _) | PassMode :: Indirect { meta_attrs : None , .. } | PassMode :: Cast { .. } => {
518
518
let next_arg = next ( ) ;
519
519
self . store ( bx, next_arg, dst) ;
520
520
} ,
0 commit comments