@@ -38,7 +38,7 @@ macro_rules! size_of_test {
3838
3939// Some of these assume 64-bit
4040size_of_test ! ( token, Token , 32 ) ;
41- size_of_test ! ( std_cow_str, Cow <' static , str >, 32 ) ;
41+ size_of_test ! ( std_cow_str, Cow <' static , str >, if cfg! ( rustc_has_better_cow_layout ) { 24 } else { 32 } ) ;
4242size_of_test ! ( cow_rc_str, CowRcStr , 16 ) ;
4343
4444size_of_test ! ( tokenizer, crate :: tokenizer:: Tokenizer , 72 ) ;
@@ -51,9 +51,15 @@ size_of_test!(parser, crate::parser::Parser, 16);
5151size_of_test ! ( source_position, crate :: SourcePosition , 8 ) ;
5252size_of_test ! ( parser_state, crate :: ParserState , 24 ) ;
5353
54- size_of_test ! ( basic_parse_error, crate :: BasicParseError , 48 ) ;
54+ size_of_test ! ( basic_parse_error, crate :: BasicParseError , if cfg! ( rustc_has_better_cow_layout ) { 40 } else { 48 } ) ;
5555size_of_test ! (
5656 parse_error_lower_bound,
5757 crate :: ParseError <( ) >,
58- if cfg!( rustc_has_pr45225) { 48 } else { 56 }
58+ if cfg!( rustc_has_better_cow_layout) {
59+ 40
60+ } else if cfg!( rustc_has_pr45225) {
61+ 48
62+ } else {
63+ 56
64+ }
5965) ;
0 commit comments