1- PRINT-DERIVE INPUT (DISPLAY): struct Foo
1+ PRINT-DERIVE INPUT (DISPLAY): struct
2+ Foo([bool; #[rustc_dummy(first)] #[rustc_dummy(second)]
3+ { #![rustc_dummy(third)] #[rustc_dummy(fourth)] #[rustc_dummy(fourth)] 30 }]);
4+ PRINT-DERIVE DEEP-RE-COLLECTED (DISPLAY): struct
5+ Foo([bool; #[rustc_dummy(first)] #[rustc_dummy(second)]
26{
3- val :
4- [bool;
5- {
6- let a = #[rustc_dummy(first)] #[rustc_dummy(second)]
7- { #![allow(unused)] 30 }; 0
8- }]
9- }
10- PRINT-DERIVE DEEP-RE-COLLECTED (DISPLAY): struct Foo
11- {
12- val :
13- [bool;
14- {
15- let a = #[rustc_dummy(first)] #[rustc_dummy(second)]
16- { #! [allow(unused)] 30 }; 0
17- }]
18- }
7+ #! [rustc_dummy(third)] #[rustc_dummy(fourth)] #[rustc_dummy(fourth)] 30
8+ }]);
199PRINT-DERIVE INPUT (DEBUG): TokenStream [
2010 Ident {
2111 ident: "struct",
@@ -26,155 +16,171 @@ PRINT-DERIVE INPUT (DEBUG): TokenStream [
2616 span: $DIR/macro-rules-derive-cfg.rs:17:16: 17:19 (#3),
2717 },
2818 Group {
29- delimiter: Brace ,
19+ delimiter: Parenthesis ,
3020 stream: TokenStream [
31- Ident {
32- ident: "val",
33- span: $DIR/macro-rules-derive-cfg.rs:18:13: 18:16 (#3),
34- },
35- Punct {
36- ch: ':',
37- spacing: Alone,
38- span: $DIR/macro-rules-derive-cfg.rs:18:16: 18:17 (#3),
39- },
4021 Group {
4122 delimiter: Bracket,
4223 stream: TokenStream [
4324 Ident {
4425 ident: "bool",
45- span: $DIR/macro-rules-derive-cfg.rs:18:19 : 18:23 (#3),
26+ span: $DIR/macro-rules-derive-cfg.rs:18:14 : 18:18 (#3),
4627 },
4728 Punct {
4829 ch: ';',
4930 spacing: Alone,
50- span: $DIR/macro-rules-derive-cfg.rs:18:23: 18:24 (#3),
31+ span: $DIR/macro-rules-derive-cfg.rs:18:18: 18:19 (#3),
32+ },
33+ Punct {
34+ ch: '#',
35+ spacing: Alone,
36+ span: $DIR/macro-rules-derive-cfg.rs:18:20: 18:21 (#3),
5137 },
5238 Group {
53- delimiter: Brace ,
39+ delimiter: Bracket ,
5440 stream: TokenStream [
5541 Ident {
56- ident: "let",
57- span: $DIR/macro-rules-derive-cfg.rs:19:17: 19:20 (#3),
42+ ident: "rustc_dummy",
43+ span: $DIR/macro-rules-derive-cfg.rs:18:43: 18:54 (#3),
44+ },
45+ Group {
46+ delimiter: Parenthesis,
47+ stream: TokenStream [
48+ Ident {
49+ ident: "first",
50+ span: $DIR/macro-rules-derive-cfg.rs:18:55: 18:60 (#3),
51+ },
52+ ],
53+ span: $DIR/macro-rules-derive-cfg.rs:18:54: 18:61 (#3),
5854 },
55+ ],
56+ span: $DIR/macro-rules-derive-cfg.rs:18:21: 18:63 (#3),
57+ },
58+ Punct {
59+ ch: '#',
60+ spacing: Alone,
61+ span: $DIR/macro-rules-derive-cfg.rs:23:13: 23:14 (#0),
62+ },
63+ Group {
64+ delimiter: Bracket,
65+ stream: TokenStream [
5966 Ident {
60- ident: "a ",
61- span: $DIR/macro-rules-derive-cfg.rs:19:21: 19:22 (#3 ),
67+ ident: "rustc_dummy ",
68+ span: $DIR/macro-rules-derive-cfg.rs:23:36: 23:47 (#0 ),
6269 },
63- Punct {
64- ch: '=',
65- spacing: Alone,
66- span: $DIR/macro-rules-derive-cfg.rs:19:23: 19:24 (#3),
70+ Group {
71+ delimiter: Parenthesis,
72+ stream: TokenStream [
73+ Ident {
74+ ident: "second",
75+ span: $DIR/macro-rules-derive-cfg.rs:23:48: 23:54 (#0),
76+ },
77+ ],
78+ span: $DIR/macro-rules-derive-cfg.rs:23:47: 23:55 (#0),
6779 },
80+ ],
81+ span: $DIR/macro-rules-derive-cfg.rs:23:14: 23:57 (#0),
82+ },
83+ Group {
84+ delimiter: Brace,
85+ stream: TokenStream [
6886 Punct {
6987 ch: '#',
88+ spacing: Joint,
89+ span: $DIR/macro-rules-derive-cfg.rs:24:5: 24:6 (#0),
90+ },
91+ Punct {
92+ ch: '!',
7093 spacing: Alone,
71- span: $DIR/macro-rules-derive-cfg.rs:19:25: 19:26 (#3 ),
94+ span: $DIR/macro-rules-derive-cfg.rs:24:6: 24:7 (#0 ),
7295 },
7396 Group {
7497 delimiter: Bracket,
7598 stream: TokenStream [
7699 Ident {
77100 ident: "rustc_dummy",
78- span: $DIR/macro-rules-derive-cfg.rs:19:48: 19:59 (#3 ),
101+ span: $DIR/macro-rules-derive-cfg.rs:24:29: 24:40 (#0 ),
79102 },
80103 Group {
81104 delimiter: Parenthesis,
82105 stream: TokenStream [
83106 Ident {
84- ident: "first ",
85- span: $DIR/macro-rules-derive-cfg.rs:19:60: 19:65 (#3 ),
107+ ident: "third ",
108+ span: $DIR/macro-rules-derive-cfg.rs:24:41: 24:46 (#0 ),
86109 },
87110 ],
88- span: $DIR/macro-rules-derive-cfg.rs:19:59: 19:66 (#3 ),
111+ span: $DIR/macro-rules-derive-cfg.rs:24:40: 24:47 (#0 ),
89112 },
90113 ],
91- span: $DIR/macro-rules-derive-cfg.rs:19:26: 19:68 (#3 ),
114+ span: $DIR/macro-rules-derive-cfg.rs:24:7: 24:49 (#0 ),
92115 },
93116 Punct {
94117 ch: '#',
95118 spacing: Alone,
96- span: $DIR/macro-rules-derive-cfg.rs:26:13: 26:14 (#0),
119+ span: $DIR/macro-rules-derive-cfg.rs:25:5: 25:6 (#0),
97120 },
98121 Group {
99122 delimiter: Bracket,
100123 stream: TokenStream [
101124 Ident {
102125 ident: "rustc_dummy",
103- span: $DIR/macro-rules-derive-cfg.rs:26:36: 26:47 (#0),
126+ span: $DIR/macro-rules-derive-cfg.rs:25:28: 25:39 (#0),
104127 },
105128 Group {
106129 delimiter: Parenthesis,
107130 stream: TokenStream [
108131 Ident {
109- ident: "second ",
110- span: $DIR/macro-rules-derive-cfg.rs:26:48: 26:54 (#0),
132+ ident: "fourth ",
133+ span: $DIR/macro-rules-derive-cfg.rs:25:40: 25:46 (#0),
111134 },
112135 ],
113- span: $DIR/macro-rules-derive-cfg.rs:26:47: 26:55 (#0),
136+ span: $DIR/macro-rules-derive-cfg.rs:25:39: 25:47 (#0),
114137 },
115138 ],
116- span: $DIR/macro-rules-derive-cfg.rs:26:14: 26:57 (#0),
139+ span: $DIR/macro-rules-derive-cfg.rs:25:6: 25:49 (#0),
140+ },
141+ Punct {
142+ ch: '#',
143+ spacing: Alone,
144+ span: $DIR/macro-rules-derive-cfg.rs:25:5: 25:6 (#0),
117145 },
118146 Group {
119- delimiter: Brace ,
147+ delimiter: Bracket ,
120148 stream: TokenStream [
121- Punct {
122- ch: '#',
123- spacing: Joint,
124- span: $DIR/macro-rules-derive-cfg.rs:27:5: 27:6 (#0),
125- },
126- Punct {
127- ch: '!',
128- spacing: Alone,
129- span: $DIR/macro-rules-derive-cfg.rs:27:6: 27:7 (#0),
149+ Ident {
150+ ident: "rustc_dummy",
151+ span: $DIR/macro-rules-derive-cfg.rs:25:28: 25:39 (#0),
130152 },
131153 Group {
132- delimiter: Bracket ,
154+ delimiter: Parenthesis ,
133155 stream: TokenStream [
134156 Ident {
135- ident: "allow",
136- span: $DIR/macro-rules-derive-cfg.rs:27:29: 27:34 (#0),
137- },
138- Group {
139- delimiter: Parenthesis,
140- stream: TokenStream [
141- Ident {
142- ident: "unused",
143- span: $DIR/macro-rules-derive-cfg.rs:27:35: 27:41 (#0),
144- },
145- ],
146- span: $DIR/macro-rules-derive-cfg.rs:27:34: 27:42 (#0),
157+ ident: "fourth",
158+ span: $DIR/macro-rules-derive-cfg.rs:25:40: 25:46 (#0),
147159 },
148160 ],
149- span: $DIR/macro-rules-derive-cfg.rs:27:7: 27:44 (#0),
150- },
151- Literal {
152- kind: Integer,
153- symbol: "30",
154- suffix: None,
155- span: $DIR/macro-rules-derive-cfg.rs:28:5: 28:7 (#0),
161+ span: $DIR/macro-rules-derive-cfg.rs:25:39: 25:47 (#0),
156162 },
157163 ],
158- span: $DIR/macro-rules-derive-cfg.rs:26:58: 29:2 (#0),
159- },
160- Punct {
161- ch: ';',
162- spacing: Alone,
163- span: $DIR/macro-rules-derive-cfg.rs:19:74: 19:75 (#3),
164+ span: $DIR/macro-rules-derive-cfg.rs:25:6: 25:49 (#0),
164165 },
165166 Literal {
166167 kind: Integer,
167- symbol: "0 ",
168+ symbol: "30 ",
168169 suffix: None,
169- span: $DIR/macro-rules-derive-cfg.rs:20:17: 20:18 (#3 ),
170+ span: $DIR/macro-rules-derive-cfg.rs:26:5: 26:7 (#0 ),
170171 },
171172 ],
172- span: $DIR/macro-rules-derive-cfg.rs:18:25: 21:14 (#3 ),
173+ span: $DIR/macro-rules-derive-cfg.rs:23:58: 27:2 (#0 ),
173174 },
174175 ],
175- span: $DIR/macro-rules-derive-cfg.rs:18:18: 21:15 (#3),
176+ span: $DIR/macro-rules-derive-cfg.rs:18:13: 18:70 (#3),
176177 },
177178 ],
178- span: $DIR/macro-rules-derive-cfg.rs:17:20: 22:10 (#3),
179+ span: $DIR/macro-rules-derive-cfg.rs:17:19: 19:10 (#3),
180+ },
181+ Punct {
182+ ch: ';',
183+ spacing: Alone,
184+ span: $DIR/macro-rules-derive-cfg.rs:19:10: 19:11 (#3),
179185 },
180186]
0 commit comments