@@ -525,31 +525,24 @@ fn ptr_metadata() {
525525 assert_eq ! ( metadata( "foo" ) , 3_usize ) ;
526526 assert_eq ! ( metadata( & [ 4 , 7 ] [ ..] ) , 2_usize ) ;
527527
528- let dst_tuple: & ( bool , [ u8 ] ) = & ( true , [ 0x66 , 0x6F , 0x6F ] ) ;
529528 let dst_struct: & Pair < bool , [ u8 ] > = & Pair ( true , [ 0x66 , 0x6F , 0x6F ] ) ;
530- assert_eq ! ( metadata( dst_tuple) , 3_usize ) ;
531529 assert_eq ! ( metadata( dst_struct) , 3_usize ) ;
532530 unsafe {
533- let dst_tuple: & ( bool , str ) = std:: mem:: transmute ( dst_tuple) ;
534531 let dst_struct: & Pair < bool , str > = std:: mem:: transmute ( dst_struct) ;
535- assert_eq ! ( & dst_tuple. 1 , "foo" ) ;
536532 assert_eq ! ( & dst_struct. 1 , "foo" ) ;
537- assert_eq ! ( metadata( dst_tuple) , 3_usize ) ;
538533 assert_eq ! ( metadata( dst_struct) , 3_usize ) ;
539534 }
540535
541536 let vtable_1: DynMetadata < dyn Debug > = metadata ( & 4_u16 as & dyn Debug ) ;
542537 let vtable_2: DynMetadata < dyn Display > = metadata ( & 4_u16 as & dyn Display ) ;
543538 let vtable_3: DynMetadata < dyn Display > = metadata ( & 4_u32 as & dyn Display ) ;
544- let vtable_4: DynMetadata < dyn Display > = metadata ( & ( true , 7_u32 ) as & ( bool , dyn Display ) ) ;
545- let vtable_5: DynMetadata < dyn Display > =
539+ let vtable_4: DynMetadata < dyn Display > =
546540 metadata ( & Pair ( true , 7_u32 ) as & Pair < bool , dyn Display > ) ;
547541 unsafe {
548542 let address_1: * const ( ) = std:: mem:: transmute ( vtable_1) ;
549543 let address_2: * const ( ) = std:: mem:: transmute ( vtable_2) ;
550544 let address_3: * const ( ) = std:: mem:: transmute ( vtable_3) ;
551545 let address_4: * const ( ) = std:: mem:: transmute ( vtable_4) ;
552- let address_5: * const ( ) = std:: mem:: transmute ( vtable_5) ;
553546 // Different trait => different vtable pointer
554547 assert_ne ! ( address_1, address_2) ;
555548 // Different erased type => different vtable pointer
@@ -558,7 +551,6 @@ fn ptr_metadata() {
558551 // This is *not guaranteed*, so we skip it in Miri.
559552 if !cfg ! ( miri) {
560553 assert_eq ! ( address_3, address_4) ;
561- assert_eq ! ( address_3, address_5) ;
562554 }
563555 }
564556}
0 commit comments