]> git.lizzy.rs Git - rust.git/blob - src/test/ui/proc-macro/inner-attrs.stdout
Rollup merge of #102574 - aDotInTheVoid:const_collections_with_hasher, r=oli-obk...
[rust.git] / src / test / ui / proc-macro / inner-attrs.stdout
1 PRINT-ATTR_ARGS INPUT (DISPLAY): first
2 PRINT-ATTR_ARGS INPUT (DEBUG): TokenStream [
3     Ident {
4         ident: "first",
5         span: $DIR/inner-attrs.rs:17:25: 17:30 (#0),
6     },
7 ]
8 PRINT-ATTR INPUT (DISPLAY): #[print_target_and_args(second)] fn foo()
9 { #! [print_target_and_args(third)] #! [print_target_and_args(fourth)] }
10 PRINT-ATTR INPUT (DEBUG): TokenStream [
11     Punct {
12         ch: '#',
13         spacing: Alone,
14         span: $DIR/inner-attrs.rs:18:1: 18:2 (#0),
15     },
16     Group {
17         delimiter: Bracket,
18         stream: TokenStream [
19             Ident {
20                 ident: "print_target_and_args",
21                 span: $DIR/inner-attrs.rs:18:3: 18:24 (#0),
22             },
23             Group {
24                 delimiter: Parenthesis,
25                 stream: TokenStream [
26                     Ident {
27                         ident: "second",
28                         span: $DIR/inner-attrs.rs:18:25: 18:31 (#0),
29                     },
30                 ],
31                 span: $DIR/inner-attrs.rs:18:24: 18:32 (#0),
32             },
33         ],
34         span: $DIR/inner-attrs.rs:18:2: 18:33 (#0),
35     },
36     Ident {
37         ident: "fn",
38         span: $DIR/inner-attrs.rs:19:1: 19:3 (#0),
39     },
40     Ident {
41         ident: "foo",
42         span: $DIR/inner-attrs.rs:19:4: 19:7 (#0),
43     },
44     Group {
45         delimiter: Parenthesis,
46         stream: TokenStream [],
47         span: $DIR/inner-attrs.rs:19:7: 19:9 (#0),
48     },
49     Group {
50         delimiter: Brace,
51         stream: TokenStream [
52             Punct {
53                 ch: '#',
54                 spacing: Joint,
55                 span: $DIR/inner-attrs.rs:20:5: 20:6 (#0),
56             },
57             Punct {
58                 ch: '!',
59                 spacing: Alone,
60                 span: $DIR/inner-attrs.rs:20:6: 20:7 (#0),
61             },
62             Group {
63                 delimiter: Bracket,
64                 stream: TokenStream [
65                     Ident {
66                         ident: "print_target_and_args",
67                         span: $DIR/inner-attrs.rs:20:8: 20:29 (#0),
68                     },
69                     Group {
70                         delimiter: Parenthesis,
71                         stream: TokenStream [
72                             Ident {
73                                 ident: "third",
74                                 span: $DIR/inner-attrs.rs:20:30: 20:35 (#0),
75                             },
76                         ],
77                         span: $DIR/inner-attrs.rs:20:29: 20:36 (#0),
78                     },
79                 ],
80                 span: $DIR/inner-attrs.rs:20:7: 20:37 (#0),
81             },
82             Punct {
83                 ch: '#',
84                 spacing: Joint,
85                 span: $DIR/inner-attrs.rs:21:5: 21:6 (#0),
86             },
87             Punct {
88                 ch: '!',
89                 spacing: Alone,
90                 span: $DIR/inner-attrs.rs:21:6: 21:7 (#0),
91             },
92             Group {
93                 delimiter: Bracket,
94                 stream: TokenStream [
95                     Ident {
96                         ident: "print_target_and_args",
97                         span: $DIR/inner-attrs.rs:21:8: 21:29 (#0),
98                     },
99                     Group {
100                         delimiter: Parenthesis,
101                         stream: TokenStream [
102                             Ident {
103                                 ident: "fourth",
104                                 span: $DIR/inner-attrs.rs:21:30: 21:36 (#0),
105                             },
106                         ],
107                         span: $DIR/inner-attrs.rs:21:29: 21:37 (#0),
108                     },
109                 ],
110                 span: $DIR/inner-attrs.rs:21:7: 21:38 (#0),
111             },
112         ],
113         span: $DIR/inner-attrs.rs:19:10: 22:2 (#0),
114     },
115 ]
116 PRINT-ATTR_ARGS INPUT (DISPLAY): second
117 PRINT-ATTR_ARGS INPUT (DEBUG): TokenStream [
118     Ident {
119         ident: "second",
120         span: $DIR/inner-attrs.rs:18:25: 18:31 (#0),
121     },
122 ]
123 PRINT-ATTR INPUT (DISPLAY): fn foo()
124 { #! [print_target_and_args(third)] #! [print_target_and_args(fourth)] }
125 PRINT-ATTR INPUT (DEBUG): TokenStream [
126     Ident {
127         ident: "fn",
128         span: $DIR/inner-attrs.rs:19:1: 19:3 (#0),
129     },
130     Ident {
131         ident: "foo",
132         span: $DIR/inner-attrs.rs:19:4: 19:7 (#0),
133     },
134     Group {
135         delimiter: Parenthesis,
136         stream: TokenStream [],
137         span: $DIR/inner-attrs.rs:19:7: 19:9 (#0),
138     },
139     Group {
140         delimiter: Brace,
141         stream: TokenStream [
142             Punct {
143                 ch: '#',
144                 spacing: Joint,
145                 span: $DIR/inner-attrs.rs:20:5: 20:6 (#0),
146             },
147             Punct {
148                 ch: '!',
149                 spacing: Alone,
150                 span: $DIR/inner-attrs.rs:20:6: 20:7 (#0),
151             },
152             Group {
153                 delimiter: Bracket,
154                 stream: TokenStream [
155                     Ident {
156                         ident: "print_target_and_args",
157                         span: $DIR/inner-attrs.rs:20:8: 20:29 (#0),
158                     },
159                     Group {
160                         delimiter: Parenthesis,
161                         stream: TokenStream [
162                             Ident {
163                                 ident: "third",
164                                 span: $DIR/inner-attrs.rs:20:30: 20:35 (#0),
165                             },
166                         ],
167                         span: $DIR/inner-attrs.rs:20:29: 20:36 (#0),
168                     },
169                 ],
170                 span: $DIR/inner-attrs.rs:20:7: 20:37 (#0),
171             },
172             Punct {
173                 ch: '#',
174                 spacing: Joint,
175                 span: $DIR/inner-attrs.rs:21:5: 21:6 (#0),
176             },
177             Punct {
178                 ch: '!',
179                 spacing: Alone,
180                 span: $DIR/inner-attrs.rs:21:6: 21:7 (#0),
181             },
182             Group {
183                 delimiter: Bracket,
184                 stream: TokenStream [
185                     Ident {
186                         ident: "print_target_and_args",
187                         span: $DIR/inner-attrs.rs:21:8: 21:29 (#0),
188                     },
189                     Group {
190                         delimiter: Parenthesis,
191                         stream: TokenStream [
192                             Ident {
193                                 ident: "fourth",
194                                 span: $DIR/inner-attrs.rs:21:30: 21:36 (#0),
195                             },
196                         ],
197                         span: $DIR/inner-attrs.rs:21:29: 21:37 (#0),
198                     },
199                 ],
200                 span: $DIR/inner-attrs.rs:21:7: 21:38 (#0),
201             },
202         ],
203         span: $DIR/inner-attrs.rs:19:10: 22:2 (#0),
204     },
205 ]
206 PRINT-ATTR_ARGS INPUT (DISPLAY): third
207 PRINT-ATTR_ARGS INPUT (DEBUG): TokenStream [
208     Ident {
209         ident: "third",
210         span: $DIR/inner-attrs.rs:20:30: 20:35 (#0),
211     },
212 ]
213 PRINT-ATTR INPUT (DISPLAY): fn foo() { #! [print_target_and_args(fourth)] }
214 PRINT-ATTR INPUT (DEBUG): TokenStream [
215     Ident {
216         ident: "fn",
217         span: $DIR/inner-attrs.rs:19:1: 19:3 (#0),
218     },
219     Ident {
220         ident: "foo",
221         span: $DIR/inner-attrs.rs:19:4: 19:7 (#0),
222     },
223     Group {
224         delimiter: Parenthesis,
225         stream: TokenStream [],
226         span: $DIR/inner-attrs.rs:19:7: 19:9 (#0),
227     },
228     Group {
229         delimiter: Brace,
230         stream: TokenStream [
231             Punct {
232                 ch: '#',
233                 spacing: Joint,
234                 span: $DIR/inner-attrs.rs:21:5: 21:6 (#0),
235             },
236             Punct {
237                 ch: '!',
238                 spacing: Alone,
239                 span: $DIR/inner-attrs.rs:21:6: 21:7 (#0),
240             },
241             Group {
242                 delimiter: Bracket,
243                 stream: TokenStream [
244                     Ident {
245                         ident: "print_target_and_args",
246                         span: $DIR/inner-attrs.rs:21:8: 21:29 (#0),
247                     },
248                     Group {
249                         delimiter: Parenthesis,
250                         stream: TokenStream [
251                             Ident {
252                                 ident: "fourth",
253                                 span: $DIR/inner-attrs.rs:21:30: 21:36 (#0),
254                             },
255                         ],
256                         span: $DIR/inner-attrs.rs:21:29: 21:37 (#0),
257                     },
258                 ],
259                 span: $DIR/inner-attrs.rs:21:7: 21:38 (#0),
260             },
261         ],
262         span: $DIR/inner-attrs.rs:19:10: 22:2 (#0),
263     },
264 ]
265 PRINT-ATTR_ARGS INPUT (DISPLAY): fourth
266 PRINT-ATTR_ARGS INPUT (DEBUG): TokenStream [
267     Ident {
268         ident: "fourth",
269         span: $DIR/inner-attrs.rs:21:30: 21:36 (#0),
270     },
271 ]
272 PRINT-ATTR INPUT (DISPLAY): fn foo() {}
273 PRINT-ATTR INPUT (DEBUG): TokenStream [
274     Ident {
275         ident: "fn",
276         span: $DIR/inner-attrs.rs:19:1: 19:3 (#0),
277     },
278     Ident {
279         ident: "foo",
280         span: $DIR/inner-attrs.rs:19:4: 19:7 (#0),
281     },
282     Group {
283         delimiter: Parenthesis,
284         stream: TokenStream [],
285         span: $DIR/inner-attrs.rs:19:7: 19:9 (#0),
286     },
287     Group {
288         delimiter: Brace,
289         stream: TokenStream [],
290         span: $DIR/inner-attrs.rs:19:10: 22:2 (#0),
291     },
292 ]
293 PRINT-ATTR_ARGS INPUT (DISPLAY): mod_first
294 PRINT-ATTR_ARGS INPUT (DEBUG): TokenStream [
295     Ident {
296         ident: "mod_first",
297         span: $DIR/inner-attrs.rs:24:25: 24:34 (#0),
298     },
299 ]
300 PRINT-ATTR INPUT (DISPLAY): #[print_target_and_args(mod_second)] mod inline_mod
301 {
302     #! [print_target_and_args(mod_third)] #!
303     [print_target_and_args(mod_fourth)]
304 }
305 PRINT-ATTR INPUT (DEBUG): TokenStream [
306     Punct {
307         ch: '#',
308         spacing: Alone,
309         span: $DIR/inner-attrs.rs:25:1: 25:2 (#0),
310     },
311     Group {
312         delimiter: Bracket,
313         stream: TokenStream [
314             Ident {
315                 ident: "print_target_and_args",
316                 span: $DIR/inner-attrs.rs:25:3: 25:24 (#0),
317             },
318             Group {
319                 delimiter: Parenthesis,
320                 stream: TokenStream [
321                     Ident {
322                         ident: "mod_second",
323                         span: $DIR/inner-attrs.rs:25:25: 25:35 (#0),
324                     },
325                 ],
326                 span: $DIR/inner-attrs.rs:25:24: 25:36 (#0),
327             },
328         ],
329         span: $DIR/inner-attrs.rs:25:2: 25:37 (#0),
330     },
331     Ident {
332         ident: "mod",
333         span: $DIR/inner-attrs.rs:26:1: 26:4 (#0),
334     },
335     Ident {
336         ident: "inline_mod",
337         span: $DIR/inner-attrs.rs:26:5: 26:15 (#0),
338     },
339     Group {
340         delimiter: Brace,
341         stream: TokenStream [
342             Punct {
343                 ch: '#',
344                 spacing: Joint,
345                 span: $DIR/inner-attrs.rs:27:5: 27:6 (#0),
346             },
347             Punct {
348                 ch: '!',
349                 spacing: Alone,
350                 span: $DIR/inner-attrs.rs:27:6: 27:7 (#0),
351             },
352             Group {
353                 delimiter: Bracket,
354                 stream: TokenStream [
355                     Ident {
356                         ident: "print_target_and_args",
357                         span: $DIR/inner-attrs.rs:27:8: 27:29 (#0),
358                     },
359                     Group {
360                         delimiter: Parenthesis,
361                         stream: TokenStream [
362                             Ident {
363                                 ident: "mod_third",
364                                 span: $DIR/inner-attrs.rs:27:30: 27:39 (#0),
365                             },
366                         ],
367                         span: $DIR/inner-attrs.rs:27:29: 27:40 (#0),
368                     },
369                 ],
370                 span: $DIR/inner-attrs.rs:27:7: 27:41 (#0),
371             },
372             Punct {
373                 ch: '#',
374                 spacing: Joint,
375                 span: $DIR/inner-attrs.rs:28:5: 28:6 (#0),
376             },
377             Punct {
378                 ch: '!',
379                 spacing: Alone,
380                 span: $DIR/inner-attrs.rs:28:6: 28:7 (#0),
381             },
382             Group {
383                 delimiter: Bracket,
384                 stream: TokenStream [
385                     Ident {
386                         ident: "print_target_and_args",
387                         span: $DIR/inner-attrs.rs:28:8: 28:29 (#0),
388                     },
389                     Group {
390                         delimiter: Parenthesis,
391                         stream: TokenStream [
392                             Ident {
393                                 ident: "mod_fourth",
394                                 span: $DIR/inner-attrs.rs:28:30: 28:40 (#0),
395                             },
396                         ],
397                         span: $DIR/inner-attrs.rs:28:29: 28:41 (#0),
398                     },
399                 ],
400                 span: $DIR/inner-attrs.rs:28:7: 28:42 (#0),
401             },
402         ],
403         span: $DIR/inner-attrs.rs:26:16: 29:2 (#0),
404     },
405 ]
406 PRINT-ATTR_ARGS INPUT (DISPLAY): mod_second
407 PRINT-ATTR_ARGS INPUT (DEBUG): TokenStream [
408     Ident {
409         ident: "mod_second",
410         span: $DIR/inner-attrs.rs:25:25: 25:35 (#0),
411     },
412 ]
413 PRINT-ATTR INPUT (DISPLAY): mod inline_mod
414 {
415     #! [print_target_and_args(mod_third)] #!
416     [print_target_and_args(mod_fourth)]
417 }
418 PRINT-ATTR INPUT (DEBUG): TokenStream [
419     Ident {
420         ident: "mod",
421         span: $DIR/inner-attrs.rs:26:1: 26:4 (#0),
422     },
423     Ident {
424         ident: "inline_mod",
425         span: $DIR/inner-attrs.rs:26:5: 26:15 (#0),
426     },
427     Group {
428         delimiter: Brace,
429         stream: TokenStream [
430             Punct {
431                 ch: '#',
432                 spacing: Joint,
433                 span: $DIR/inner-attrs.rs:27:5: 27:6 (#0),
434             },
435             Punct {
436                 ch: '!',
437                 spacing: Alone,
438                 span: $DIR/inner-attrs.rs:27:6: 27:7 (#0),
439             },
440             Group {
441                 delimiter: Bracket,
442                 stream: TokenStream [
443                     Ident {
444                         ident: "print_target_and_args",
445                         span: $DIR/inner-attrs.rs:27:8: 27:29 (#0),
446                     },
447                     Group {
448                         delimiter: Parenthesis,
449                         stream: TokenStream [
450                             Ident {
451                                 ident: "mod_third",
452                                 span: $DIR/inner-attrs.rs:27:30: 27:39 (#0),
453                             },
454                         ],
455                         span: $DIR/inner-attrs.rs:27:29: 27:40 (#0),
456                     },
457                 ],
458                 span: $DIR/inner-attrs.rs:27:7: 27:41 (#0),
459             },
460             Punct {
461                 ch: '#',
462                 spacing: Joint,
463                 span: $DIR/inner-attrs.rs:28:5: 28:6 (#0),
464             },
465             Punct {
466                 ch: '!',
467                 spacing: Alone,
468                 span: $DIR/inner-attrs.rs:28:6: 28:7 (#0),
469             },
470             Group {
471                 delimiter: Bracket,
472                 stream: TokenStream [
473                     Ident {
474                         ident: "print_target_and_args",
475                         span: $DIR/inner-attrs.rs:28:8: 28:29 (#0),
476                     },
477                     Group {
478                         delimiter: Parenthesis,
479                         stream: TokenStream [
480                             Ident {
481                                 ident: "mod_fourth",
482                                 span: $DIR/inner-attrs.rs:28:30: 28:40 (#0),
483                             },
484                         ],
485                         span: $DIR/inner-attrs.rs:28:29: 28:41 (#0),
486                     },
487                 ],
488                 span: $DIR/inner-attrs.rs:28:7: 28:42 (#0),
489             },
490         ],
491         span: $DIR/inner-attrs.rs:26:16: 29:2 (#0),
492     },
493 ]
494 PRINT-ATTR_ARGS INPUT (DISPLAY): mod_third
495 PRINT-ATTR_ARGS INPUT (DEBUG): TokenStream [
496     Ident {
497         ident: "mod_third",
498         span: $DIR/inner-attrs.rs:27:30: 27:39 (#0),
499     },
500 ]
501 PRINT-ATTR INPUT (DISPLAY): mod inline_mod { #! [print_target_and_args(mod_fourth)] }
502 PRINT-ATTR INPUT (DEBUG): TokenStream [
503     Ident {
504         ident: "mod",
505         span: $DIR/inner-attrs.rs:26:1: 26:4 (#0),
506     },
507     Ident {
508         ident: "inline_mod",
509         span: $DIR/inner-attrs.rs:26:5: 26:15 (#0),
510     },
511     Group {
512         delimiter: Brace,
513         stream: TokenStream [
514             Punct {
515                 ch: '#',
516                 spacing: Joint,
517                 span: $DIR/inner-attrs.rs:28:5: 28:6 (#0),
518             },
519             Punct {
520                 ch: '!',
521                 spacing: Alone,
522                 span: $DIR/inner-attrs.rs:28:6: 28:7 (#0),
523             },
524             Group {
525                 delimiter: Bracket,
526                 stream: TokenStream [
527                     Ident {
528                         ident: "print_target_and_args",
529                         span: $DIR/inner-attrs.rs:28:8: 28:29 (#0),
530                     },
531                     Group {
532                         delimiter: Parenthesis,
533                         stream: TokenStream [
534                             Ident {
535                                 ident: "mod_fourth",
536                                 span: $DIR/inner-attrs.rs:28:30: 28:40 (#0),
537                             },
538                         ],
539                         span: $DIR/inner-attrs.rs:28:29: 28:41 (#0),
540                     },
541                 ],
542                 span: $DIR/inner-attrs.rs:28:7: 28:42 (#0),
543             },
544         ],
545         span: $DIR/inner-attrs.rs:26:16: 29:2 (#0),
546     },
547 ]
548 PRINT-ATTR_ARGS INPUT (DISPLAY): mod_fourth
549 PRINT-ATTR_ARGS INPUT (DEBUG): TokenStream [
550     Ident {
551         ident: "mod_fourth",
552         span: $DIR/inner-attrs.rs:28:30: 28:40 (#0),
553     },
554 ]
555 PRINT-ATTR INPUT (DISPLAY): mod inline_mod {}
556 PRINT-ATTR INPUT (DEBUG): TokenStream [
557     Ident {
558         ident: "mod",
559         span: $DIR/inner-attrs.rs:26:1: 26:4 (#0),
560     },
561     Ident {
562         ident: "inline_mod",
563         span: $DIR/inner-attrs.rs:26:5: 26:15 (#0),
564     },
565     Group {
566         delimiter: Brace,
567         stream: TokenStream [],
568         span: $DIR/inner-attrs.rs:26:16: 29:2 (#0),
569     },
570 ]
571 PRINT-DERIVE INPUT (DISPLAY): struct MyDerivePrint
572 {
573     field :
574     [u8 ; { match true { _ => { #! [rustc_dummy(third)] true } } ; 0 }]
575 }
576 PRINT-DERIVE INPUT (DEBUG): TokenStream [
577     Ident {
578         ident: "struct",
579         span: $DIR/inner-attrs.rs:36:1: 36:7 (#0),
580     },
581     Ident {
582         ident: "MyDerivePrint",
583         span: $DIR/inner-attrs.rs:36:8: 36:21 (#0),
584     },
585     Group {
586         delimiter: Brace,
587         stream: TokenStream [
588             Ident {
589                 ident: "field",
590                 span: $DIR/inner-attrs.rs:37:5: 37:10 (#0),
591             },
592             Punct {
593                 ch: ':',
594                 spacing: Alone,
595                 span: $DIR/inner-attrs.rs:37:10: 37:11 (#0),
596             },
597             Group {
598                 delimiter: Bracket,
599                 stream: TokenStream [
600                     Ident {
601                         ident: "u8",
602                         span: $DIR/inner-attrs.rs:37:13: 37:15 (#0),
603                     },
604                     Punct {
605                         ch: ';',
606                         spacing: Alone,
607                         span: $DIR/inner-attrs.rs:37:15: 37:16 (#0),
608                     },
609                     Group {
610                         delimiter: Brace,
611                         stream: TokenStream [
612                             Ident {
613                                 ident: "match",
614                                 span: $DIR/inner-attrs.rs:38:9: 38:14 (#0),
615                             },
616                             Ident {
617                                 ident: "true",
618                                 span: $DIR/inner-attrs.rs:38:15: 38:19 (#0),
619                             },
620                             Group {
621                                 delimiter: Brace,
622                                 stream: TokenStream [
623                                     Ident {
624                                         ident: "_",
625                                         span: $DIR/inner-attrs.rs:39:13: 39:14 (#0),
626                                     },
627                                     Punct {
628                                         ch: '=',
629                                         spacing: Joint,
630                                         span: $DIR/inner-attrs.rs:39:15: 39:16 (#0),
631                                     },
632                                     Punct {
633                                         ch: '>',
634                                         spacing: Alone,
635                                         span: $DIR/inner-attrs.rs:39:16: 39:17 (#0),
636                                     },
637                                     Group {
638                                         delimiter: Brace,
639                                         stream: TokenStream [
640                                             Punct {
641                                                 ch: '#',
642                                                 spacing: Alone,
643                                                 span: $DIR/inner-attrs.rs:40:17: 40:18 (#0),
644                                             },
645                                             Punct {
646                                                 ch: '!',
647                                                 spacing: Alone,
648                                                 span: $DIR/inner-attrs.rs:40:18: 40:19 (#0),
649                                             },
650                                             Group {
651                                                 delimiter: Bracket,
652                                                 stream: TokenStream [
653                                                     Ident {
654                                                         ident: "rustc_dummy",
655                                                         span: $DIR/inner-attrs.rs:40:41: 40:52 (#0),
656                                                     },
657                                                     Group {
658                                                         delimiter: Parenthesis,
659                                                         stream: TokenStream [
660                                                             Ident {
661                                                                 ident: "third",
662                                                                 span: $DIR/inner-attrs.rs:40:53: 40:58 (#0),
663                                                             },
664                                                         ],
665                                                         span: $DIR/inner-attrs.rs:40:52: 40:59 (#0),
666                                                     },
667                                                 ],
668                                                 span: $DIR/inner-attrs.rs:40:17: 40:18 (#0),
669                                             },
670                                             Ident {
671                                                 ident: "true",
672                                                 span: $DIR/inner-attrs.rs:41:17: 41:21 (#0),
673                                             },
674                                         ],
675                                         span: $DIR/inner-attrs.rs:39:18: 42:14 (#0),
676                                     },
677                                 ],
678                                 span: $DIR/inner-attrs.rs:38:20: 43:10 (#0),
679                             },
680                             Punct {
681                                 ch: ';',
682                                 spacing: Alone,
683                                 span: $DIR/inner-attrs.rs:43:10: 43:11 (#0),
684                             },
685                             Literal {
686                                 kind: Integer,
687                                 symbol: "0",
688                                 suffix: None,
689                                 span: $DIR/inner-attrs.rs:44:9: 44:10 (#0),
690                             },
691                         ],
692                         span: $DIR/inner-attrs.rs:37:17: 45:6 (#0),
693                     },
694                 ],
695                 span: $DIR/inner-attrs.rs:37:12: 45:7 (#0),
696             },
697         ],
698         span: $DIR/inner-attrs.rs:36:22: 46:2 (#0),
699     },
700 ]
701 PRINT-ATTR_ARGS INPUT (DISPLAY): tuple_attrs
702 PRINT-ATTR_ARGS INPUT (DEBUG): TokenStream [
703     Ident {
704         ident: "tuple_attrs",
705         span: $DIR/inner-attrs.rs:49:29: 49:40 (#0),
706     },
707 ]
708 PRINT-ATTR INPUT (DISPLAY): (3, 4, { #! [cfg_attr(not(FALSE), rustc_dummy(innermost))] 5 }) ;
709 PRINT-ATTR INPUT (DEBUG): TokenStream [
710     Group {
711         delimiter: Parenthesis,
712         stream: TokenStream [
713             Literal {
714                 kind: Integer,
715                 symbol: "3",
716                 suffix: None,
717                 span: $DIR/inner-attrs.rs:50:9: 50:10 (#0),
718             },
719             Punct {
720                 ch: ',',
721                 spacing: Alone,
722                 span: $DIR/inner-attrs.rs:50:10: 50:11 (#0),
723             },
724             Literal {
725                 kind: Integer,
726                 symbol: "4",
727                 suffix: None,
728                 span: $DIR/inner-attrs.rs:50:12: 50:13 (#0),
729             },
730             Punct {
731                 ch: ',',
732                 spacing: Alone,
733                 span: $DIR/inner-attrs.rs:50:13: 50:14 (#0),
734             },
735             Group {
736                 delimiter: Brace,
737                 stream: TokenStream [
738                     Punct {
739                         ch: '#',
740                         spacing: Joint,
741                         span: $DIR/inner-attrs.rs:51:13: 51:14 (#0),
742                     },
743                     Punct {
744                         ch: '!',
745                         spacing: Alone,
746                         span: $DIR/inner-attrs.rs:51:14: 51:15 (#0),
747                     },
748                     Group {
749                         delimiter: Bracket,
750                         stream: TokenStream [
751                             Ident {
752                                 ident: "cfg_attr",
753                                 span: $DIR/inner-attrs.rs:51:16: 51:24 (#0),
754                             },
755                             Group {
756                                 delimiter: Parenthesis,
757                                 stream: TokenStream [
758                                     Ident {
759                                         ident: "not",
760                                         span: $DIR/inner-attrs.rs:51:25: 51:28 (#0),
761                                     },
762                                     Group {
763                                         delimiter: Parenthesis,
764                                         stream: TokenStream [
765                                             Ident {
766                                                 ident: "FALSE",
767                                                 span: $DIR/inner-attrs.rs:51:29: 51:34 (#0),
768                                             },
769                                         ],
770                                         span: $DIR/inner-attrs.rs:51:28: 51:35 (#0),
771                                     },
772                                     Punct {
773                                         ch: ',',
774                                         spacing: Alone,
775                                         span: $DIR/inner-attrs.rs:51:35: 51:36 (#0),
776                                     },
777                                     Ident {
778                                         ident: "rustc_dummy",
779                                         span: $DIR/inner-attrs.rs:51:37: 51:48 (#0),
780                                     },
781                                     Group {
782                                         delimiter: Parenthesis,
783                                         stream: TokenStream [
784                                             Ident {
785                                                 ident: "innermost",
786                                                 span: $DIR/inner-attrs.rs:51:49: 51:58 (#0),
787                                             },
788                                         ],
789                                         span: $DIR/inner-attrs.rs:51:48: 51:59 (#0),
790                                     },
791                                 ],
792                                 span: $DIR/inner-attrs.rs:51:24: 51:60 (#0),
793                             },
794                         ],
795                         span: $DIR/inner-attrs.rs:51:15: 51:61 (#0),
796                     },
797                     Literal {
798                         kind: Integer,
799                         symbol: "5",
800                         suffix: None,
801                         span: $DIR/inner-attrs.rs:52:13: 52:14 (#0),
802                     },
803                 ],
804                 span: $DIR/inner-attrs.rs:50:15: 53:10 (#0),
805             },
806         ],
807         span: $DIR/inner-attrs.rs:49:43: 54:6 (#0),
808     },
809     Punct {
810         ch: ';',
811         spacing: Alone,
812         span: $DIR/inner-attrs.rs:54:6: 54:7 (#0),
813     },
814 ]
815 PRINT-ATTR_ARGS INPUT (DISPLAY): tuple_attrs
816 PRINT-ATTR_ARGS INPUT (DEBUG): TokenStream [
817     Ident {
818         ident: "tuple_attrs",
819         span: $DIR/inner-attrs.rs:56:29: 56:40 (#0),
820     },
821 ]
822 PRINT-ATTR INPUT (DISPLAY): (3, 4, { #! [cfg_attr(not(FALSE), rustc_dummy(innermost))] 5 }) ;
823 PRINT-ATTR INPUT (DEBUG): TokenStream [
824     Group {
825         delimiter: Parenthesis,
826         stream: TokenStream [
827             Literal {
828                 kind: Integer,
829                 symbol: "3",
830                 suffix: None,
831                 span: $DIR/inner-attrs.rs:57:9: 57:10 (#0),
832             },
833             Punct {
834                 ch: ',',
835                 spacing: Alone,
836                 span: $DIR/inner-attrs.rs:57:10: 57:11 (#0),
837             },
838             Literal {
839                 kind: Integer,
840                 symbol: "4",
841                 suffix: None,
842                 span: $DIR/inner-attrs.rs:57:12: 57:13 (#0),
843             },
844             Punct {
845                 ch: ',',
846                 spacing: Alone,
847                 span: $DIR/inner-attrs.rs:57:13: 57:14 (#0),
848             },
849             Group {
850                 delimiter: Brace,
851                 stream: TokenStream [
852                     Punct {
853                         ch: '#',
854                         spacing: Joint,
855                         span: $DIR/inner-attrs.rs:58:13: 58:14 (#0),
856                     },
857                     Punct {
858                         ch: '!',
859                         spacing: Alone,
860                         span: $DIR/inner-attrs.rs:58:14: 58:15 (#0),
861                     },
862                     Group {
863                         delimiter: Bracket,
864                         stream: TokenStream [
865                             Ident {
866                                 ident: "cfg_attr",
867                                 span: $DIR/inner-attrs.rs:58:16: 58:24 (#0),
868                             },
869                             Group {
870                                 delimiter: Parenthesis,
871                                 stream: TokenStream [
872                                     Ident {
873                                         ident: "not",
874                                         span: $DIR/inner-attrs.rs:58:25: 58:28 (#0),
875                                     },
876                                     Group {
877                                         delimiter: Parenthesis,
878                                         stream: TokenStream [
879                                             Ident {
880                                                 ident: "FALSE",
881                                                 span: $DIR/inner-attrs.rs:58:29: 58:34 (#0),
882                                             },
883                                         ],
884                                         span: $DIR/inner-attrs.rs:58:28: 58:35 (#0),
885                                     },
886                                     Punct {
887                                         ch: ',',
888                                         spacing: Alone,
889                                         span: $DIR/inner-attrs.rs:58:35: 58:36 (#0),
890                                     },
891                                     Ident {
892                                         ident: "rustc_dummy",
893                                         span: $DIR/inner-attrs.rs:58:37: 58:48 (#0),
894                                     },
895                                     Group {
896                                         delimiter: Parenthesis,
897                                         stream: TokenStream [
898                                             Ident {
899                                                 ident: "innermost",
900                                                 span: $DIR/inner-attrs.rs:58:49: 58:58 (#0),
901                                             },
902                                         ],
903                                         span: $DIR/inner-attrs.rs:58:48: 58:59 (#0),
904                                     },
905                                 ],
906                                 span: $DIR/inner-attrs.rs:58:24: 58:60 (#0),
907                             },
908                         ],
909                         span: $DIR/inner-attrs.rs:58:15: 58:61 (#0),
910                     },
911                     Literal {
912                         kind: Integer,
913                         symbol: "5",
914                         suffix: None,
915                         span: $DIR/inner-attrs.rs:59:13: 59:14 (#0),
916                     },
917                 ],
918                 span: $DIR/inner-attrs.rs:57:15: 60:10 (#0),
919             },
920         ],
921         span: $DIR/inner-attrs.rs:56:43: 61:6 (#0),
922     },
923     Punct {
924         ch: ';',
925         spacing: Alone,
926         span: $DIR/inner-attrs.rs:61:6: 61:7 (#0),
927     },
928 ]
929 PRINT-ATTR_ARGS INPUT (DISPLAY): tenth
930 PRINT-ATTR_ARGS INPUT (DEBUG): TokenStream [
931     Ident {
932         ident: "tenth",
933         span: $DIR/inner-attrs.rs:83:42: 83:47 (#0),
934     },
935 ]
936 PRINT-ATTR INPUT (DISPLAY): fn weird_extern() {}
937 PRINT-ATTR INPUT (DEBUG): TokenStream [
938     Ident {
939         ident: "fn",
940         span: $DIR/inner-attrs.rs:82:5: 82:7 (#0),
941     },
942     Ident {
943         ident: "weird_extern",
944         span: $DIR/inner-attrs.rs:82:8: 82:20 (#0),
945     },
946     Group {
947         delimiter: Parenthesis,
948         stream: TokenStream [],
949         span: $DIR/inner-attrs.rs:82:20: 82:22 (#0),
950     },
951     Group {
952         delimiter: Brace,
953         stream: TokenStream [],
954         span: $DIR/inner-attrs.rs:82:23: 84:6 (#0),
955     },
956 ]