|
| 1 | +#![cfg(not(randomize_layout))] |
| 2 | + |
1 | 3 | extern crate proc_macro;
|
2 | 4 |
|
3 | 5 | use std::mem;
|
4 | 6 |
|
5 |
| -#[rustversion::attr(before(1.32), ignore)] |
| 7 | +#[rustversion::attr(before(1.64), ignore)] |
6 | 8 | #[test]
|
7 |
| -fn test_proc_macro_span_size() { |
| 9 | +fn test_proc_macro_size() { |
8 | 10 | assert_eq!(mem::size_of::<proc_macro::Span>(), 4);
|
9 | 11 | assert_eq!(mem::size_of::<Option<proc_macro::Span>>(), 4);
|
| 12 | + assert_eq!(mem::size_of::<proc_macro::Group>(), 20); |
| 13 | + assert_eq!(mem::size_of::<proc_macro::Ident>(), 12); |
| 14 | + assert_eq!(mem::size_of::<proc_macro::Punct>(), 8); |
| 15 | + assert_eq!(mem::size_of::<proc_macro::Literal>(), 16); |
| 16 | + assert_eq!(mem::size_of::<proc_macro::TokenStream>(), 4); |
10 | 17 | }
|
11 | 18 |
|
12 | 19 | #[cfg_attr(not(all(not(wrap_proc_macro), not(span_locations))), ignore)]
|
13 | 20 | #[test]
|
14 |
| -fn test_proc_macro2_fallback_span_size_without_locations() { |
| 21 | +fn test_proc_macro2_fallback_size_without_locations() { |
15 | 22 | assert_eq!(mem::size_of::<proc_macro2::Span>(), 0);
|
16 | 23 | assert_eq!(mem::size_of::<Option<proc_macro2::Span>>(), 1);
|
| 24 | + assert_eq!(mem::size_of::<proc_macro2::Group>(), 16); |
| 25 | + assert_eq!(mem::size_of::<proc_macro2::Ident>(), 32); |
| 26 | + assert_eq!(mem::size_of::<proc_macro2::Punct>(), 8); |
| 27 | + assert_eq!(mem::size_of::<proc_macro2::Literal>(), 24); |
| 28 | + assert_eq!(mem::size_of::<proc_macro2::TokenStream>(), 8); |
17 | 29 | }
|
18 | 30 |
|
19 | 31 | #[cfg_attr(not(all(not(wrap_proc_macro), span_locations)), ignore)]
|
20 | 32 | #[test]
|
21 |
| -fn test_proc_macro2_fallback_span_size_with_locations() { |
| 33 | +fn test_proc_macro2_fallback_size_with_locations() { |
22 | 34 | assert_eq!(mem::size_of::<proc_macro2::Span>(), 8);
|
23 | 35 | assert_eq!(mem::size_of::<Option<proc_macro2::Span>>(), 12);
|
| 36 | + assert_eq!(mem::size_of::<proc_macro2::Group>(), 24); |
| 37 | + assert_eq!(mem::size_of::<proc_macro2::Ident>(), 40); |
| 38 | + assert_eq!(mem::size_of::<proc_macro2::Punct>(), 16); |
| 39 | + assert_eq!(mem::size_of::<proc_macro2::Literal>(), 32); |
| 40 | + assert_eq!(mem::size_of::<proc_macro2::TokenStream>(), 8); |
24 | 41 | }
|
25 | 42 |
|
26 |
| -#[rustversion::attr(before(1.32), ignore)] |
| 43 | +#[rustversion::attr(before(1.71), ignore)] |
27 | 44 | #[rustversion::attr(
|
28 |
| - since(1.32), |
| 45 | + since(1.71), |
29 | 46 | cfg_attr(not(all(wrap_proc_macro, not(span_locations))), ignore)
|
30 | 47 | )]
|
31 | 48 | #[test]
|
32 |
| -fn test_proc_macro2_wrapper_span_size_without_locations() { |
| 49 | +fn test_proc_macro2_wrapper_size_without_locations() { |
33 | 50 | assert_eq!(mem::size_of::<proc_macro2::Span>(), 4);
|
34 | 51 | assert_eq!(mem::size_of::<Option<proc_macro2::Span>>(), 8);
|
| 52 | + assert_eq!(mem::size_of::<proc_macro2::Group>(), 24); |
| 53 | + assert_eq!(mem::size_of::<proc_macro2::Ident>(), 32); |
| 54 | + assert_eq!(mem::size_of::<proc_macro2::Punct>(), 12); |
| 55 | + assert_eq!(mem::size_of::<proc_macro2::Literal>(), 24); |
| 56 | + assert_eq!(mem::size_of::<proc_macro2::TokenStream>(), 32); |
35 | 57 | }
|
36 | 58 |
|
37 |
| -#[cfg_attr(not(all(wrap_proc_macro, span_locations)), ignore)] |
| 59 | +#[rustversion::attr(before(1.65), ignore)] |
| 60 | +#[rustversion::attr( |
| 61 | + since(1.65), |
| 62 | + cfg_attr(not(all(wrap_proc_macro, span_locations)), ignore) |
| 63 | +)] |
38 | 64 | #[test]
|
39 |
| -fn test_proc_macro2_wrapper_span_size_with_locations() { |
| 65 | +fn test_proc_macro2_wrapper_size_with_locations() { |
40 | 66 | assert_eq!(mem::size_of::<proc_macro2::Span>(), 12);
|
41 | 67 | assert_eq!(mem::size_of::<Option<proc_macro2::Span>>(), 12);
|
| 68 | + assert_eq!(mem::size_of::<proc_macro2::Group>(), 32); |
| 69 | + assert_eq!(mem::size_of::<proc_macro2::Ident>(), 40); |
| 70 | + assert_eq!(mem::size_of::<proc_macro2::Punct>(), 20); |
| 71 | + assert_eq!(mem::size_of::<proc_macro2::Literal>(), 32); |
| 72 | + assert_eq!(mem::size_of::<proc_macro2::TokenStream>(), 32); |
42 | 73 | }
|
0 commit comments