@@ -10,10 +10,10 @@ pub struct RWLock {
1010 writer : SpinMutex < WaitVariable < bool > > ,
1111}
1212
13- // Below is to check at compile time, that RWLock has size of 128 bytes.
13+ // Check at compile time that RWLock size matches C definition (see test_c_rwlock_initializer below)
1414#[ allow( dead_code) ]
1515unsafe fn rw_lock_size_assert ( r : RWLock ) {
16- mem:: transmute :: < RWLock , [ u8 ; 128 ] > ( r) ;
16+ mem:: transmute :: < RWLock , [ u8 ; 144 ] > ( r) ;
1717}
1818
1919impl RWLock {
@@ -210,15 +210,17 @@ mod tests {
210210 // be changed too.
211211 #[ test]
212212 fn test_c_rwlock_initializer ( ) {
213+ #[ rustfmt:: skip]
213214 const RWLOCK_INIT : & [ u8 ] = & [
214- 0x1 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
215- 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x3 , 0x0 ,
216- 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
217- 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x1 , 0x0 , 0x0 , 0x0 ,
218- 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
219- 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x3 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
220- 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
221- 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
215+ /* 0x00 */ 0x1 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
216+ /* 0x10 */ 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x2 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
217+ /* 0x20 */ 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
218+ /* 0x30 */ 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
219+ /* 0x40 */ 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x1 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
220+ /* 0x50 */ 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
221+ /* 0x60 */ 0x2 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
222+ /* 0x70 */ 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
223+ /* 0x80 */ 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 , 0x0 ,
222224 ] ;
223225
224226 #[ inline( never) ]
@@ -239,7 +241,7 @@ mod tests {
239241 zero_stack ( ) ;
240242 let mut init = MaybeUninit :: < RWLock > :: zeroed ( ) ;
241243 rwlock_new ( & mut init) ;
242- assert_eq ! ( mem:: transmute:: <_, [ u8 ; 128 ] >( init. assume_init( ) ) . as_slice( ) , RWLOCK_INIT )
244+ assert_eq ! ( mem:: transmute:: <_, [ u8 ; 144 ] >( init. assume_init( ) ) . as_slice( ) , RWLOCK_INIT )
243245 } ;
244246 }
245247}
0 commit comments