@@ -177,15 +177,12 @@ pub fn represent_type<'a, 'tcx>(cx: &CrateContext<'a, 'tcx>,
177177 repr
178178}
179179
180- macro_rules! repeat_u8_as_u32 {
181- ( $name: expr) => { ( ( $name as u32 ) << 24 |
182- ( $name as u32 ) << 16 |
183- ( $name as u32 ) << 8 |
184- ( $name as u32 ) ) }
180+ const fn repeat_u8_as_u32 ( val : u8 ) -> u32 {
181+ ( val as u32 ) << 24 | ( val as u32 ) << 16 | ( val as u32 ) << 8 | val as u32
185182}
186- macro_rules! repeat_u8_as_u64 {
187- ( $name : expr ) => { ( ( repeat_u8_as_u32! ( $name ) as u64 ) << 32 |
188- ( repeat_u8_as_u32! ( $name ) as u64 ) ) }
183+
184+ const fn repeat_u8_as_u64 ( val : u8 ) -> u64 {
185+ ( repeat_u8_as_u32 ( val ) as u64 ) << 32 | repeat_u8_as_u32 ( val ) as u64
189186}
190187
191188/// `DTOR_NEEDED_HINT` is a stack-local hint that just means
@@ -203,8 +200,8 @@ pub const DTOR_NEEDED_HINT: u8 = 0x3d;
203200pub const DTOR_MOVED_HINT : u8 = 0x2d ;
204201
205202pub const DTOR_NEEDED : u8 = 0xd4 ;
206- pub const DTOR_NEEDED_U32 : u32 = repeat_u8_as_u32 ! ( DTOR_NEEDED ) ;
207- pub const DTOR_NEEDED_U64 : u64 = repeat_u8_as_u64 ! ( DTOR_NEEDED ) ;
203+ pub const DTOR_NEEDED_U32 : u32 = repeat_u8_as_u32 ( DTOR_NEEDED ) ;
204+ pub const DTOR_NEEDED_U64 : u64 = repeat_u8_as_u64 ( DTOR_NEEDED ) ;
208205#[ allow( dead_code) ]
209206pub fn dtor_needed_usize ( ccx : & CrateContext ) -> usize {
210207 match & ccx. tcx ( ) . sess . target . target . target_pointer_width [ ..] {
@@ -215,8 +212,8 @@ pub fn dtor_needed_usize(ccx: &CrateContext) -> usize {
215212}
216213
217214pub const DTOR_DONE : u8 = 0x1d ;
218- pub const DTOR_DONE_U32 : u32 = repeat_u8_as_u32 ! ( DTOR_DONE ) ;
219- pub const DTOR_DONE_U64 : u64 = repeat_u8_as_u64 ! ( DTOR_DONE ) ;
215+ pub const DTOR_DONE_U32 : u32 = repeat_u8_as_u32 ( DTOR_DONE ) ;
216+ pub const DTOR_DONE_U64 : u64 = repeat_u8_as_u64 ( DTOR_DONE ) ;
220217#[ allow( dead_code) ]
221218pub fn dtor_done_usize ( ccx : & CrateContext ) -> usize {
222219 match & ccx. tcx ( ) . sess . target . target . target_pointer_width [ ..] {
0 commit comments