@@ -2,41 +2,70 @@ extern crate proc_macro;
22
33use std:: mem;
44
5- #[ rustversion:: attr( before( 1.32 ) , ignore) ]
5+ #[ rustversion:: attr( before( 1.64 ) , ignore) ]
66#[ test]
7- fn test_proc_macro_span_size ( ) {
7+ fn test_proc_macro_size ( ) {
88 assert_eq ! ( mem:: size_of:: <proc_macro:: Span >( ) , 4 ) ;
99 assert_eq ! ( mem:: size_of:: <Option <proc_macro:: Span >>( ) , 4 ) ;
10+ assert_eq ! ( mem:: size_of:: <proc_macro:: Group >( ) , 20 ) ;
11+ assert_eq ! ( mem:: size_of:: <proc_macro:: Ident >( ) , 12 ) ;
12+ assert_eq ! ( mem:: size_of:: <proc_macro:: Punct >( ) , 8 ) ;
13+ assert_eq ! ( mem:: size_of:: <proc_macro:: Literal >( ) , 16 ) ;
14+ assert_eq ! ( mem:: size_of:: <proc_macro:: TokenStream >( ) , 4 ) ;
1015}
1116
1217#[ cfg_attr( not( all( not( wrap_proc_macro) , not( span_locations) ) ) , ignore) ]
1318#[ test]
14- fn test_proc_macro2_fallback_span_size_without_locations ( ) {
19+ fn test_proc_macro2_fallback_size_without_locations ( ) {
1520 assert_eq ! ( mem:: size_of:: <proc_macro2:: Span >( ) , 0 ) ;
1621 assert_eq ! ( mem:: size_of:: <Option <proc_macro2:: Span >>( ) , 1 ) ;
22+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Group >( ) , 16 ) ;
23+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Ident >( ) , 32 ) ;
24+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Punct >( ) , 8 ) ;
25+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Literal >( ) , 24 ) ;
26+ assert_eq ! ( mem:: size_of:: <proc_macro2:: TokenStream >( ) , 8 ) ;
1727}
1828
1929#[ cfg_attr( not( all( not( wrap_proc_macro) , span_locations) ) , ignore) ]
2030#[ test]
21- fn test_proc_macro2_fallback_span_size_with_locations ( ) {
31+ fn test_proc_macro2_fallback_size_with_locations ( ) {
2232 assert_eq ! ( mem:: size_of:: <proc_macro2:: Span >( ) , 8 ) ;
2333 assert_eq ! ( mem:: size_of:: <Option <proc_macro2:: Span >>( ) , 12 ) ;
34+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Group >( ) , 24 ) ;
35+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Ident >( ) , 40 ) ;
36+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Punct >( ) , 16 ) ;
37+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Literal >( ) , 32 ) ;
38+ assert_eq ! ( mem:: size_of:: <proc_macro2:: TokenStream >( ) , 8 ) ;
2439}
2540
26- #[ rustversion:: attr( before( 1.32 ) , ignore) ]
41+ #[ rustversion:: attr( before( 1.71 ) , ignore) ]
2742#[ rustversion:: attr(
28- since( 1.32 ) ,
43+ since( 1.71 ) ,
2944 cfg_attr( not( all( wrap_proc_macro, not( span_locations) ) ) , ignore)
3045) ]
3146#[ test]
32- fn test_proc_macro2_wrapper_span_size_without_locations ( ) {
47+ fn test_proc_macro2_wrapper_size_without_locations ( ) {
3348 assert_eq ! ( mem:: size_of:: <proc_macro2:: Span >( ) , 4 ) ;
3449 assert_eq ! ( mem:: size_of:: <Option <proc_macro2:: Span >>( ) , 8 ) ;
50+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Group >( ) , 24 ) ;
51+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Ident >( ) , 32 ) ;
52+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Punct >( ) , 12 ) ;
53+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Literal >( ) , 24 ) ;
54+ assert_eq ! ( mem:: size_of:: <proc_macro2:: TokenStream >( ) , 32 ) ;
3555}
3656
37- #[ cfg_attr( not( all( wrap_proc_macro, span_locations) ) , ignore) ]
57+ #[ rustversion:: attr( before( 1.65 ) , ignore) ]
58+ #[ rustversion:: attr(
59+ since( 1.65 ) ,
60+ cfg_attr( not( all( wrap_proc_macro, span_locations) ) , ignore)
61+ ) ]
3862#[ test]
39- fn test_proc_macro2_wrapper_span_size_with_locations ( ) {
63+ fn test_proc_macro2_wrapper_size_with_locations ( ) {
4064 assert_eq ! ( mem:: size_of:: <proc_macro2:: Span >( ) , 12 ) ;
4165 assert_eq ! ( mem:: size_of:: <Option <proc_macro2:: Span >>( ) , 12 ) ;
66+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Group >( ) , 32 ) ;
67+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Ident >( ) , 40 ) ;
68+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Punct >( ) , 20 ) ;
69+ assert_eq ! ( mem:: size_of:: <proc_macro2:: Literal >( ) , 32 ) ;
70+ assert_eq ! ( mem:: size_of:: <proc_macro2:: TokenStream >( ) , 32 ) ;
4271}
0 commit comments