@@ -257,12 +257,22 @@ macro_rules! impl_Display {
257257 } ;
258258}
259259
260- impl_Display ! ( i8 , u8 , i16 , u16 , i32 , u32 as u32 via to_u32 named fmt_u32) ;
261- impl_Display ! ( i64 , u64 as u64 via to_u64 named fmt_u64) ;
260+ // Include wasm32 in here since it doesn't reflect the native pointer size, and
261+ // often cares strongly about getting a smaller code size.
262+ #[ cfg( any( target_pointer_width = "64" , target_arch = "wasm32" ) ) ]
263+ mod imp {
264+ use super :: * ;
265+ impl_Display ! (
266+ i8 , u8 , i16 , u16 , i32 , u32 , i64 , u64 , usize , isize
267+ as u64 via to_u64 named fmt_u64
268+ ) ;
269+ }
270+
271+ #[ cfg( not( any( target_pointer_width = "64" , target_arch = "wasm32" ) ) ) ]
272+ mod imp {
273+ use super :: * ;
274+ impl_Display ! ( i8 , u8 , i16 , u16 , i32 , u32 , isize , usize as u32 via to_u32 named fmt_u32) ;
275+ impl_Display ! ( i64 , u64 as u64 via to_u64 named fmt_u64) ;
276+ }
277+
262278impl_Display ! ( i128 , u128 as u128 via to_u128 named fmt_u128) ;
263- #[ cfg( target_pointer_width = "16" ) ]
264- impl_Display ! ( isize , usize as u16 via to_u16 named fmt_usize) ;
265- #[ cfg( target_pointer_width = "32" ) ]
266- impl_Display ! ( isize , usize as u32 via to_u32 named fmt_usize) ;
267- #[ cfg( target_pointer_width = "64" ) ]
268- impl_Display ! ( isize , usize as u64 via to_u64 named fmt_usize) ;
0 commit comments