@@ -286,7 +286,7 @@ impl<'a, 'tcx, Bx: BuilderMethods<'a, 'tcx>> FunctionCx<'a, 'tcx, Bx> {
286
286
287
287
let newval = match ( r_t_in, r_t_out) {
288
288
( CastTy :: Int ( i) , CastTy :: Int ( _) ) => {
289
- bx. intcast ( llval, ll_t_out, matches ! ( i , IntTy :: I ) )
289
+ bx. intcast ( llval, ll_t_out, i . is_signed ( ) )
290
290
}
291
291
( CastTy :: Float , CastTy :: Float ) => {
292
292
let srcsz = bx. cx ( ) . float_width ( ll_t_in) ;
@@ -300,7 +300,7 @@ impl<'a, 'tcx, Bx: BuilderMethods<'a, 'tcx>> FunctionCx<'a, 'tcx, Bx> {
300
300
}
301
301
}
302
302
( CastTy :: Int ( i) , CastTy :: Float ) => {
303
- if matches ! ( i , IntTy :: I ) {
303
+ if i . is_signed ( ) {
304
304
bx. sitofp ( llval, ll_t_out)
305
305
} else {
306
306
bx. uitofp ( llval, ll_t_out)
@@ -311,7 +311,7 @@ impl<'a, 'tcx, Bx: BuilderMethods<'a, 'tcx>> FunctionCx<'a, 'tcx, Bx> {
311
311
}
312
312
( CastTy :: Int ( i) , CastTy :: Ptr ( _) ) => {
313
313
let usize_llval =
314
- bx. intcast ( llval, bx. cx ( ) . type_isize ( ) , matches ! ( i , IntTy :: I ) ) ;
314
+ bx. intcast ( llval, bx. cx ( ) . type_isize ( ) , i . is_signed ( ) ) ;
315
315
bx. inttoptr ( usize_llval, ll_t_out)
316
316
}
317
317
( CastTy :: Float , CastTy :: Int ( IntTy :: I ) ) => {
0 commit comments