Auto merge of #76658 - Aaron1011:fix/encode-dummy-loc-span, r=lcnr
Properly encode spans with a dummy location and non-root `SyntaxContext` Previously, we would throw away the `SyntaxContext` of any span with a dummy location during metadata encoding. This commit makes metadata Span encoding consistent with incr-cache Span encoding - an 'invalid span' tag is only used when it doesn't lose any information.
This commit is contained in:
commit
b6c84553c4
11 changed files with 160 additions and 158 deletions
|
@ -162,7 +162,7 @@ impl<'a, 'tcx> Encodable<EncodeContext<'a, 'tcx>> for ExpnId {
|
|||
|
||||
impl<'a, 'tcx> Encodable<EncodeContext<'a, 'tcx>> for Span {
|
||||
fn encode(&self, s: &mut EncodeContext<'a, 'tcx>) -> opaque::EncodeResult {
|
||||
if self.is_dummy() {
|
||||
if *self == rustc_span::DUMMY_SP {
|
||||
return TAG_INVALID_SPAN.encode(s);
|
||||
}
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/capture-macro-rules-invoke.rs:36:24: 36:28 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/capture-macro-rules-invoke.rs:21:21: 21:26 (#3),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:21:21: 21:26 (#4),
|
||||
},
|
||||
]
|
||||
PRINT-BANG INPUT (DISPLAY): 1 + 1, { "a" }, let a = 1;, String, my_name, 'a, my_val = 30,
|
||||
|
@ -37,12 +37,12 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/capture-macro-rules-invoke.rs:38:17: 38:18 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:29: 14:34 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:29: 14:34 (#8),
|
||||
},
|
||||
Punct {
|
||||
ch: ',',
|
||||
spacing: Alone,
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:34: 14:35 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:34: 14:35 (#8),
|
||||
},
|
||||
Group {
|
||||
delimiter: None,
|
||||
|
@ -60,12 +60,12 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/capture-macro-rules-invoke.rs:39:13: 39:20 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:36: 14:42 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:36: 14:42 (#8),
|
||||
},
|
||||
Punct {
|
||||
ch: ',',
|
||||
spacing: Alone,
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:42: 14:43 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:42: 14:43 (#8),
|
||||
},
|
||||
Group {
|
||||
delimiter: None,
|
||||
|
@ -90,12 +90,12 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/capture-macro-rules-invoke.rs:40:21: 40:22 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:44: 14:49 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:44: 14:49 (#8),
|
||||
},
|
||||
Punct {
|
||||
ch: ',',
|
||||
spacing: Alone,
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:49: 14:50 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:49: 14:50 (#8),
|
||||
},
|
||||
Group {
|
||||
delimiter: None,
|
||||
|
@ -105,12 +105,12 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/capture-macro-rules-invoke.rs:41:13: 41:19 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:51: 14:54 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:51: 14:54 (#8),
|
||||
},
|
||||
Punct {
|
||||
ch: ',',
|
||||
spacing: Alone,
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:54: 14:55 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:54: 14:55 (#8),
|
||||
},
|
||||
Group {
|
||||
delimiter: None,
|
||||
|
@ -120,12 +120,12 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/capture-macro-rules-invoke.rs:42:13: 42:20 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:56: 14:62 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:56: 14:62 (#8),
|
||||
},
|
||||
Punct {
|
||||
ch: ',',
|
||||
spacing: Alone,
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:62: 14:63 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:14:62: 14:63 (#8),
|
||||
},
|
||||
Group {
|
||||
delimiter: None,
|
||||
|
@ -140,12 +140,12 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/capture-macro-rules-invoke.rs:43:13: 43:15 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:29: 15:38 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:29: 15:38 (#8),
|
||||
},
|
||||
Punct {
|
||||
ch: ',',
|
||||
spacing: Alone,
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:38: 15:39 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:38: 15:39 (#8),
|
||||
},
|
||||
Group {
|
||||
delimiter: None,
|
||||
|
@ -166,12 +166,12 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/capture-macro-rules-invoke.rs:44:22: 44:24 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:40: 15:45 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:40: 15:45 (#8),
|
||||
},
|
||||
Punct {
|
||||
ch: ',',
|
||||
spacing: Alone,
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:45: 15:46 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:45: 15:46 (#8),
|
||||
},
|
||||
Group {
|
||||
delimiter: None,
|
||||
|
@ -209,12 +209,12 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/capture-macro-rules-invoke.rs:45:26: 45:32 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:47: 15:52 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:47: 15:52 (#8),
|
||||
},
|
||||
Punct {
|
||||
ch: ',',
|
||||
spacing: Alone,
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:52: 15:53 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:52: 15:53 (#8),
|
||||
},
|
||||
Group {
|
||||
delimiter: None,
|
||||
|
@ -252,12 +252,12 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/capture-macro-rules-invoke.rs:46:16: 46:31 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:54: 15:58 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:54: 15:58 (#8),
|
||||
},
|
||||
Punct {
|
||||
ch: ',',
|
||||
spacing: Alone,
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:58: 15:59 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:58: 15:59 (#8),
|
||||
},
|
||||
Group {
|
||||
delimiter: Bracket,
|
||||
|
@ -280,7 +280,7 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
Punct {
|
||||
ch: ',',
|
||||
spacing: Alone,
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:63: 15:64 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:63: 15:64 (#8),
|
||||
},
|
||||
Group {
|
||||
delimiter: None,
|
||||
|
@ -297,7 +297,7 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/capture-macro-rules-invoke.rs:48:14: 48:16 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:65: 15:69 (#7),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:15:65: 15:69 (#8),
|
||||
},
|
||||
]
|
||||
PRINT-BANG INPUT (DISPLAY): (a, b)
|
||||
|
@ -325,6 +325,6 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/capture-macro-rules-invoke.rs:52:26: 52:32 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/capture-macro-rules-invoke.rs:27:21: 27:25 (#11),
|
||||
span: $DIR/capture-macro-rules-invoke.rs:27:21: 27:25 (#12),
|
||||
},
|
||||
]
|
||||
|
|
|
@ -2,79 +2,79 @@ PRINT-BANG INPUT (DISPLAY): struct M($crate :: S) ;
|
|||
PRINT-BANG INPUT (DEBUG): TokenStream [
|
||||
Ident {
|
||||
ident: "struct",
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:13: 17:19 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:13: 17:19 (#4),
|
||||
},
|
||||
Ident {
|
||||
ident: "M",
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:20: 17:21 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:20: 17:21 (#4),
|
||||
},
|
||||
Group {
|
||||
delimiter: Parenthesis,
|
||||
stream: TokenStream [
|
||||
Ident {
|
||||
ident: "$crate",
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:22: 17:28 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:22: 17:28 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Joint,
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:28: 17:30 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:28: 17:30 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Alone,
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:28: 17:30 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:28: 17:30 (#4),
|
||||
},
|
||||
Ident {
|
||||
ident: "S",
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:30: 17:31 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:30: 17:31 (#4),
|
||||
},
|
||||
],
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:21: 17:32 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:21: 17:32 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ';',
|
||||
spacing: Alone,
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:32: 17:33 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:17:32: 17:33 (#4),
|
||||
},
|
||||
]
|
||||
PRINT-ATTR INPUT (DISPLAY): struct A($crate :: S) ;
|
||||
PRINT-ATTR INPUT (DEBUG): TokenStream [
|
||||
Ident {
|
||||
ident: "struct",
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:9: 21:15 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:9: 21:15 (#4),
|
||||
},
|
||||
Ident {
|
||||
ident: "A",
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:16: 21:17 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:16: 21:17 (#4),
|
||||
},
|
||||
Group {
|
||||
delimiter: Parenthesis,
|
||||
stream: TokenStream [
|
||||
Ident {
|
||||
ident: "$crate",
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:18: 21:24 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:18: 21:24 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Joint,
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:24: 21:26 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:24: 21:26 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Alone,
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:24: 21:26 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:24: 21:26 (#4),
|
||||
},
|
||||
Ident {
|
||||
ident: "S",
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:26: 21:27 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:26: 21:27 (#4),
|
||||
},
|
||||
],
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:17: 21:28 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:17: 21:28 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ';',
|
||||
spacing: Alone,
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:28: 21:29 (#3),
|
||||
span: $DIR/dollar-crate-issue-57089.rs:21:28: 21:29 (#4),
|
||||
},
|
||||
]
|
||||
|
|
|
@ -2,109 +2,109 @@ PRINT-ATTR INPUT (DISPLAY): struct A(identity ! ($crate :: S)) ;
|
|||
PRINT-ATTR INPUT (DEBUG): TokenStream [
|
||||
Ident {
|
||||
ident: "struct",
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:5: 19:11 (#3),
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:5: 19:11 (#4),
|
||||
},
|
||||
Ident {
|
||||
ident: "A",
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:12: 19:13 (#3),
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:12: 19:13 (#4),
|
||||
},
|
||||
Group {
|
||||
delimiter: Parenthesis,
|
||||
stream: TokenStream [
|
||||
Ident {
|
||||
ident: "identity",
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:14: 19:22 (#3),
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:14: 19:22 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: '!',
|
||||
spacing: Alone,
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:22: 19:23 (#3),
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:22: 19:23 (#4),
|
||||
},
|
||||
Group {
|
||||
delimiter: Parenthesis,
|
||||
stream: TokenStream [
|
||||
Ident {
|
||||
ident: "$crate",
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:24: 19:30 (#3),
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:24: 19:30 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Joint,
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:30: 19:32 (#3),
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:30: 19:32 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Alone,
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:30: 19:32 (#3),
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:30: 19:32 (#4),
|
||||
},
|
||||
Ident {
|
||||
ident: "S",
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:32: 19:33 (#3),
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:32: 19:33 (#4),
|
||||
},
|
||||
],
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:23: 19:34 (#3),
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:23: 19:34 (#4),
|
||||
},
|
||||
],
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:13: 19:35 (#3),
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:13: 19:35 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ';',
|
||||
spacing: Alone,
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:35: 19:36 (#3),
|
||||
span: $DIR/dollar-crate-issue-62325.rs:19:35: 19:36 (#4),
|
||||
},
|
||||
]
|
||||
PRINT-ATTR INPUT (DISPLAY): struct B(identity ! ($crate :: S)) ;
|
||||
PRINT-ATTR INPUT (DEBUG): TokenStream [
|
||||
Ident {
|
||||
ident: "struct",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:5: 21:11 (#10),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:5: 21:11 (#12),
|
||||
},
|
||||
Ident {
|
||||
ident: "B",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:12: 21:13 (#10),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:12: 21:13 (#12),
|
||||
},
|
||||
Group {
|
||||
delimiter: Parenthesis,
|
||||
stream: TokenStream [
|
||||
Ident {
|
||||
ident: "identity",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:14: 21:22 (#10),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:14: 21:22 (#12),
|
||||
},
|
||||
Punct {
|
||||
ch: '!',
|
||||
spacing: Alone,
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:22: 21:23 (#10),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:22: 21:23 (#12),
|
||||
},
|
||||
Group {
|
||||
delimiter: Parenthesis,
|
||||
stream: TokenStream [
|
||||
Ident {
|
||||
ident: "$crate",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:24: 21:30 (#10),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:24: 21:30 (#12),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Joint,
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:30: 21:32 (#10),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:30: 21:32 (#12),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Alone,
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:30: 21:32 (#10),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:30: 21:32 (#12),
|
||||
},
|
||||
Ident {
|
||||
ident: "S",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:32: 21:33 (#10),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:32: 21:33 (#12),
|
||||
},
|
||||
],
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:23: 21:34 (#10),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:23: 21:34 (#12),
|
||||
},
|
||||
],
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:13: 21:35 (#10),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:13: 21:35 (#12),
|
||||
},
|
||||
Punct {
|
||||
ch: ';',
|
||||
spacing: Alone,
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:35: 21:36 (#10),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:21:35: 21:36 (#12),
|
||||
},
|
||||
]
|
||||
|
|
|
@ -2,239 +2,239 @@ PRINT-BANG INPUT (DISPLAY): struct M($crate :: S) ;
|
|||
PRINT-BANG INPUT (DEBUG): TokenStream [
|
||||
Ident {
|
||||
ident: "struct",
|
||||
span: $DIR/dollar-crate.rs:20:17: 20:23 (#3),
|
||||
span: $DIR/dollar-crate.rs:20:17: 20:23 (#4),
|
||||
},
|
||||
Ident {
|
||||
ident: "M",
|
||||
span: $DIR/dollar-crate.rs:20:24: 20:25 (#3),
|
||||
span: $DIR/dollar-crate.rs:20:24: 20:25 (#4),
|
||||
},
|
||||
Group {
|
||||
delimiter: Parenthesis,
|
||||
stream: TokenStream [
|
||||
Ident {
|
||||
ident: "$crate",
|
||||
span: $DIR/dollar-crate.rs:20:26: 20:32 (#3),
|
||||
span: $DIR/dollar-crate.rs:20:26: 20:32 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Joint,
|
||||
span: $DIR/dollar-crate.rs:20:32: 20:34 (#3),
|
||||
span: $DIR/dollar-crate.rs:20:32: 20:34 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Alone,
|
||||
span: $DIR/dollar-crate.rs:20:32: 20:34 (#3),
|
||||
span: $DIR/dollar-crate.rs:20:32: 20:34 (#4),
|
||||
},
|
||||
Ident {
|
||||
ident: "S",
|
||||
span: $DIR/dollar-crate.rs:20:34: 20:35 (#3),
|
||||
span: $DIR/dollar-crate.rs:20:34: 20:35 (#4),
|
||||
},
|
||||
],
|
||||
span: $DIR/dollar-crate.rs:20:25: 20:36 (#3),
|
||||
span: $DIR/dollar-crate.rs:20:25: 20:36 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ';',
|
||||
spacing: Alone,
|
||||
span: $DIR/dollar-crate.rs:20:36: 20:37 (#3),
|
||||
span: $DIR/dollar-crate.rs:20:36: 20:37 (#4),
|
||||
},
|
||||
]
|
||||
PRINT-ATTR INPUT (DISPLAY): struct A($crate :: S) ;
|
||||
PRINT-ATTR INPUT (DEBUG): TokenStream [
|
||||
Ident {
|
||||
ident: "struct",
|
||||
span: $DIR/dollar-crate.rs:24:13: 24:19 (#3),
|
||||
span: $DIR/dollar-crate.rs:24:13: 24:19 (#4),
|
||||
},
|
||||
Ident {
|
||||
ident: "A",
|
||||
span: $DIR/dollar-crate.rs:24:20: 24:21 (#3),
|
||||
span: $DIR/dollar-crate.rs:24:20: 24:21 (#4),
|
||||
},
|
||||
Group {
|
||||
delimiter: Parenthesis,
|
||||
stream: TokenStream [
|
||||
Ident {
|
||||
ident: "$crate",
|
||||
span: $DIR/dollar-crate.rs:24:22: 24:28 (#3),
|
||||
span: $DIR/dollar-crate.rs:24:22: 24:28 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Joint,
|
||||
span: $DIR/dollar-crate.rs:24:28: 24:30 (#3),
|
||||
span: $DIR/dollar-crate.rs:24:28: 24:30 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Alone,
|
||||
span: $DIR/dollar-crate.rs:24:28: 24:30 (#3),
|
||||
span: $DIR/dollar-crate.rs:24:28: 24:30 (#4),
|
||||
},
|
||||
Ident {
|
||||
ident: "S",
|
||||
span: $DIR/dollar-crate.rs:24:30: 24:31 (#3),
|
||||
span: $DIR/dollar-crate.rs:24:30: 24:31 (#4),
|
||||
},
|
||||
],
|
||||
span: $DIR/dollar-crate.rs:24:21: 24:32 (#3),
|
||||
span: $DIR/dollar-crate.rs:24:21: 24:32 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ';',
|
||||
spacing: Alone,
|
||||
span: $DIR/dollar-crate.rs:24:32: 24:33 (#3),
|
||||
span: $DIR/dollar-crate.rs:24:32: 24:33 (#4),
|
||||
},
|
||||
]
|
||||
PRINT-DERIVE INPUT (DISPLAY): struct D($crate :: S) ;
|
||||
PRINT-DERIVE INPUT (DEBUG): TokenStream [
|
||||
Ident {
|
||||
ident: "struct",
|
||||
span: $DIR/dollar-crate.rs:27:13: 27:19 (#3),
|
||||
span: $DIR/dollar-crate.rs:27:13: 27:19 (#4),
|
||||
},
|
||||
Ident {
|
||||
ident: "D",
|
||||
span: $DIR/dollar-crate.rs:27:20: 27:21 (#3),
|
||||
span: $DIR/dollar-crate.rs:27:20: 27:21 (#4),
|
||||
},
|
||||
Group {
|
||||
delimiter: Parenthesis,
|
||||
stream: TokenStream [
|
||||
Ident {
|
||||
ident: "$crate",
|
||||
span: $DIR/dollar-crate.rs:27:22: 27:28 (#3),
|
||||
span: $DIR/dollar-crate.rs:27:22: 27:28 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Joint,
|
||||
span: $DIR/dollar-crate.rs:27:28: 27:30 (#3),
|
||||
span: $DIR/dollar-crate.rs:27:28: 27:30 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Alone,
|
||||
span: $DIR/dollar-crate.rs:27:28: 27:30 (#3),
|
||||
span: $DIR/dollar-crate.rs:27:28: 27:30 (#4),
|
||||
},
|
||||
Ident {
|
||||
ident: "S",
|
||||
span: $DIR/dollar-crate.rs:27:30: 27:31 (#3),
|
||||
span: $DIR/dollar-crate.rs:27:30: 27:31 (#4),
|
||||
},
|
||||
],
|
||||
span: $DIR/dollar-crate.rs:27:21: 27:32 (#3),
|
||||
span: $DIR/dollar-crate.rs:27:21: 27:32 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: ';',
|
||||
spacing: Alone,
|
||||
span: $DIR/dollar-crate.rs:27:32: 27:33 (#3),
|
||||
span: $DIR/dollar-crate.rs:27:32: 27:33 (#4),
|
||||
},
|
||||
]
|
||||
PRINT-BANG INPUT (DISPLAY): struct M($crate :: S) ;
|
||||
PRINT-BANG INPUT (DEBUG): TokenStream [
|
||||
Ident {
|
||||
ident: "struct",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:13: 7:19 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:13: 7:19 (#15),
|
||||
},
|
||||
Ident {
|
||||
ident: "M",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:20: 7:21 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:20: 7:21 (#15),
|
||||
},
|
||||
Group {
|
||||
delimiter: Parenthesis,
|
||||
stream: TokenStream [
|
||||
Ident {
|
||||
ident: "$crate",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:22: 7:28 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:22: 7:28 (#15),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Joint,
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:28: 7:30 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:28: 7:30 (#15),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Alone,
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:28: 7:30 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:28: 7:30 (#15),
|
||||
},
|
||||
Ident {
|
||||
ident: "S",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:30: 7:31 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:30: 7:31 (#15),
|
||||
},
|
||||
],
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:21: 7:32 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:21: 7:32 (#15),
|
||||
},
|
||||
Punct {
|
||||
ch: ';',
|
||||
spacing: Alone,
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:32: 7:33 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:7:32: 7:33 (#15),
|
||||
},
|
||||
]
|
||||
PRINT-ATTR INPUT (DISPLAY): struct A($crate :: S) ;
|
||||
PRINT-ATTR INPUT (DEBUG): TokenStream [
|
||||
Ident {
|
||||
ident: "struct",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:9: 11:15 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:9: 11:15 (#15),
|
||||
},
|
||||
Ident {
|
||||
ident: "A",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:16: 11:17 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:16: 11:17 (#15),
|
||||
},
|
||||
Group {
|
||||
delimiter: Parenthesis,
|
||||
stream: TokenStream [
|
||||
Ident {
|
||||
ident: "$crate",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:18: 11:24 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:18: 11:24 (#15),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Joint,
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:24: 11:26 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:24: 11:26 (#15),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Alone,
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:24: 11:26 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:24: 11:26 (#15),
|
||||
},
|
||||
Ident {
|
||||
ident: "S",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:26: 11:27 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:26: 11:27 (#15),
|
||||
},
|
||||
],
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:17: 11:28 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:17: 11:28 (#15),
|
||||
},
|
||||
Punct {
|
||||
ch: ';',
|
||||
spacing: Alone,
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:28: 11:29 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:11:28: 11:29 (#15),
|
||||
},
|
||||
]
|
||||
PRINT-DERIVE INPUT (DISPLAY): struct D($crate :: S) ;
|
||||
PRINT-DERIVE INPUT (DEBUG): TokenStream [
|
||||
Ident {
|
||||
ident: "struct",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:9: 14:15 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:9: 14:15 (#15),
|
||||
},
|
||||
Ident {
|
||||
ident: "D",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:16: 14:17 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:16: 14:17 (#15),
|
||||
},
|
||||
Group {
|
||||
delimiter: Parenthesis,
|
||||
stream: TokenStream [
|
||||
Ident {
|
||||
ident: "$crate",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:18: 14:24 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:18: 14:24 (#15),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Joint,
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:24: 14:26 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:24: 14:26 (#15),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Alone,
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:24: 14:26 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:24: 14:26 (#15),
|
||||
},
|
||||
Ident {
|
||||
ident: "S",
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:26: 14:27 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:26: 14:27 (#15),
|
||||
},
|
||||
],
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:17: 14:28 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:17: 14:28 (#15),
|
||||
},
|
||||
Punct {
|
||||
ch: ';',
|
||||
spacing: Alone,
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:28: 14:29 (#13),
|
||||
span: $DIR/auxiliary/dollar-crate-external.rs:14:28: 14:29 (#15),
|
||||
},
|
||||
]
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Called proc_macro_hack with TokenStream [Ident { ident: "struct", span: $DIR/time-macros-impl/src/lib.rs:5:21: 5:27 (#5) }, Ident { ident: "One", span: $DIR/time-macros-impl/src/lib.rs:5:28: 5:31 (#5) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "Foo", span: $DIR/group-compat-hack.rs:27:18: 27:21 (#0) }], span: $DIR/time-macros-impl/src/lib.rs:5:31: 5:38 (#5) }, Punct { ch: ';', spacing: Alone, span: $DIR/time-macros-impl/src/lib.rs:5:38: 5:39 (#5) }]
|
||||
Called proc_macro_hack with TokenStream [Ident { ident: "struct", span: $DIR/js-sys/src/lib.rs:5:21: 5:27 (#9) }, Ident { ident: "Two", span: $DIR/js-sys/src/lib.rs:5:28: 5:31 (#9) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "Foo", span: $DIR/group-compat-hack.rs:28:13: 28:16 (#0) }], span: $DIR/js-sys/src/lib.rs:5:31: 5:38 (#9) }, Punct { ch: ';', spacing: Alone, span: $DIR/js-sys/src/lib.rs:5:38: 5:39 (#9) }]
|
||||
Called proc_macro_hack with TokenStream [Ident { ident: "struct", span: $DIR/group-compat-hack.rs:22:25: 22:31 (#13) }, Ident { ident: "Three", span: $DIR/group-compat-hack.rs:22:32: 22:37 (#13) }, Group { delimiter: Parenthesis, stream: TokenStream [Group { delimiter: None, stream: TokenStream [Ident { ident: "Foo", span: $DIR/group-compat-hack.rs:29:12: 29:15 (#0) }], span: $DIR/group-compat-hack.rs:22:38: 22:43 (#13) }], span: $DIR/group-compat-hack.rs:22:37: 22:44 (#13) }, Punct { ch: ';', spacing: Alone, span: $DIR/group-compat-hack.rs:22:44: 22:45 (#13) }]
|
||||
Called proc_macro_hack with TokenStream [Ident { ident: "struct", span: $DIR/time-macros-impl-0.1.0/src/lib.rs:5:21: 5:27 (#19) }, Ident { ident: "One", span: $DIR/time-macros-impl-0.1.0/src/lib.rs:5:28: 5:31 (#19) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "Foo", span: $DIR/group-compat-hack.rs:43:18: 43:21 (#0) }], span: $DIR/time-macros-impl-0.1.0/src/lib.rs:5:31: 5:38 (#19) }, Punct { ch: ';', spacing: Alone, span: $DIR/time-macros-impl-0.1.0/src/lib.rs:5:38: 5:39 (#19) }]
|
||||
Called proc_macro_hack with TokenStream [Ident { ident: "struct", span: $DIR/js-sys-0.3.17/src/lib.rs:5:21: 5:27 (#23) }, Ident { ident: "Two", span: $DIR/js-sys-0.3.17/src/lib.rs:5:28: 5:31 (#23) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "Foo", span: $DIR/group-compat-hack.rs:44:13: 44:16 (#0) }], span: $DIR/js-sys-0.3.17/src/lib.rs:5:31: 5:38 (#23) }, Punct { ch: ';', spacing: Alone, span: $DIR/js-sys-0.3.17/src/lib.rs:5:38: 5:39 (#23) }]
|
||||
Called proc_macro_hack with TokenStream [Ident { ident: "struct", span: $DIR/group-compat-hack.rs:38:25: 38:31 (#27) }, Ident { ident: "Three", span: $DIR/group-compat-hack.rs:38:32: 38:37 (#27) }, Group { delimiter: Parenthesis, stream: TokenStream [Group { delimiter: None, stream: TokenStream [Ident { ident: "Foo", span: $DIR/group-compat-hack.rs:45:12: 45:15 (#0) }], span: $DIR/group-compat-hack.rs:38:38: 38:43 (#27) }], span: $DIR/group-compat-hack.rs:38:37: 38:44 (#27) }, Punct { ch: ';', spacing: Alone, span: $DIR/group-compat-hack.rs:38:44: 38:45 (#27) }]
|
||||
Called proc_macro_hack with TokenStream [Ident { ident: "struct", span: $DIR/time-macros-impl/src/lib.rs:5:21: 5:27 (#6) }, Ident { ident: "One", span: $DIR/time-macros-impl/src/lib.rs:5:28: 5:31 (#6) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "Foo", span: $DIR/group-compat-hack.rs:27:18: 27:21 (#0) }], span: $DIR/time-macros-impl/src/lib.rs:5:31: 5:38 (#6) }, Punct { ch: ';', spacing: Alone, span: $DIR/time-macros-impl/src/lib.rs:5:38: 5:39 (#6) }]
|
||||
Called proc_macro_hack with TokenStream [Ident { ident: "struct", span: $DIR/js-sys/src/lib.rs:5:21: 5:27 (#10) }, Ident { ident: "Two", span: $DIR/js-sys/src/lib.rs:5:28: 5:31 (#10) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "Foo", span: $DIR/group-compat-hack.rs:28:13: 28:16 (#0) }], span: $DIR/js-sys/src/lib.rs:5:31: 5:38 (#10) }, Punct { ch: ';', spacing: Alone, span: $DIR/js-sys/src/lib.rs:5:38: 5:39 (#10) }]
|
||||
Called proc_macro_hack with TokenStream [Ident { ident: "struct", span: $DIR/group-compat-hack.rs:22:25: 22:31 (#14) }, Ident { ident: "Three", span: $DIR/group-compat-hack.rs:22:32: 22:37 (#14) }, Group { delimiter: Parenthesis, stream: TokenStream [Group { delimiter: None, stream: TokenStream [Ident { ident: "Foo", span: $DIR/group-compat-hack.rs:29:12: 29:15 (#0) }], span: $DIR/group-compat-hack.rs:22:38: 22:43 (#14) }], span: $DIR/group-compat-hack.rs:22:37: 22:44 (#14) }, Punct { ch: ';', spacing: Alone, span: $DIR/group-compat-hack.rs:22:44: 22:45 (#14) }]
|
||||
Called proc_macro_hack with TokenStream [Ident { ident: "struct", span: $DIR/time-macros-impl-0.1.0/src/lib.rs:5:21: 5:27 (#20) }, Ident { ident: "One", span: $DIR/time-macros-impl-0.1.0/src/lib.rs:5:28: 5:31 (#20) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "Foo", span: $DIR/group-compat-hack.rs:43:18: 43:21 (#0) }], span: $DIR/time-macros-impl-0.1.0/src/lib.rs:5:31: 5:38 (#20) }, Punct { ch: ';', spacing: Alone, span: $DIR/time-macros-impl-0.1.0/src/lib.rs:5:38: 5:39 (#20) }]
|
||||
Called proc_macro_hack with TokenStream [Ident { ident: "struct", span: $DIR/js-sys-0.3.17/src/lib.rs:5:21: 5:27 (#24) }, Ident { ident: "Two", span: $DIR/js-sys-0.3.17/src/lib.rs:5:28: 5:31 (#24) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "Foo", span: $DIR/group-compat-hack.rs:44:13: 44:16 (#0) }], span: $DIR/js-sys-0.3.17/src/lib.rs:5:31: 5:38 (#24) }, Punct { ch: ';', spacing: Alone, span: $DIR/js-sys-0.3.17/src/lib.rs:5:38: 5:39 (#24) }]
|
||||
Called proc_macro_hack with TokenStream [Ident { ident: "struct", span: $DIR/group-compat-hack.rs:38:25: 38:31 (#28) }, Ident { ident: "Three", span: $DIR/group-compat-hack.rs:38:32: 38:37 (#28) }, Group { delimiter: Parenthesis, stream: TokenStream [Group { delimiter: None, stream: TokenStream [Ident { ident: "Foo", span: $DIR/group-compat-hack.rs:45:12: 45:15 (#0) }], span: $DIR/group-compat-hack.rs:38:38: 38:43 (#28) }], span: $DIR/group-compat-hack.rs:38:37: 38:44 (#28) }, Punct { ch: ';', spacing: Alone, span: $DIR/group-compat-hack.rs:38:44: 38:45 (#28) }]
|
||||
|
|
|
@ -8,14 +8,14 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: #0 bytes(503..504),
|
||||
},
|
||||
],
|
||||
span: #3 bytes(370..372),
|
||||
span: #4 bytes(370..372),
|
||||
},
|
||||
]
|
||||
PRINT-ATTR INPUT (DISPLAY): const A : u8 = 0 ;
|
||||
PRINT-ATTR INPUT (DEBUG): TokenStream [
|
||||
Ident {
|
||||
ident: "const",
|
||||
span: #3 bytes(416..421),
|
||||
span: #4 bytes(416..421),
|
||||
},
|
||||
Group {
|
||||
delimiter: None,
|
||||
|
@ -25,39 +25,39 @@ PRINT-ATTR INPUT (DEBUG): TokenStream [
|
|||
span: #0 bytes(503..504),
|
||||
},
|
||||
],
|
||||
span: #3 bytes(422..424),
|
||||
span: #4 bytes(422..424),
|
||||
},
|
||||
Punct {
|
||||
ch: ':',
|
||||
spacing: Alone,
|
||||
span: #3 bytes(424..425),
|
||||
span: #4 bytes(424..425),
|
||||
},
|
||||
Ident {
|
||||
ident: "u8",
|
||||
span: #3 bytes(426..428),
|
||||
span: #4 bytes(426..428),
|
||||
},
|
||||
Punct {
|
||||
ch: '=',
|
||||
spacing: Alone,
|
||||
span: #3 bytes(429..430),
|
||||
span: #4 bytes(429..430),
|
||||
},
|
||||
Literal {
|
||||
kind: Integer,
|
||||
symbol: "0",
|
||||
suffix: None,
|
||||
span: #3 bytes(431..432),
|
||||
span: #4 bytes(431..432),
|
||||
},
|
||||
Punct {
|
||||
ch: ';',
|
||||
spacing: Alone,
|
||||
span: #3 bytes(432..433),
|
||||
span: #4 bytes(432..433),
|
||||
},
|
||||
]
|
||||
PRINT-DERIVE INPUT (DISPLAY): struct A { }
|
||||
PRINT-DERIVE INPUT (DEBUG): TokenStream [
|
||||
Ident {
|
||||
ident: "struct",
|
||||
span: #3 bytes(468..474),
|
||||
span: #4 bytes(468..474),
|
||||
},
|
||||
Group {
|
||||
delimiter: None,
|
||||
|
@ -67,11 +67,11 @@ PRINT-DERIVE INPUT (DEBUG): TokenStream [
|
|||
span: #0 bytes(503..504),
|
||||
},
|
||||
],
|
||||
span: #3 bytes(475..477),
|
||||
span: #4 bytes(475..477),
|
||||
},
|
||||
Group {
|
||||
delimiter: Brace,
|
||||
stream: TokenStream [],
|
||||
span: #3 bytes(478..480),
|
||||
span: #4 bytes(478..480),
|
||||
},
|
||||
]
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Def site: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#4)
|
||||
Input: TokenStream [Ident { ident: "$crate", span: $DIR/meta-macro-hygiene.rs:24:37: 24:43 (#3) }, Punct { ch: ':', spacing: Joint, span: $DIR/meta-macro-hygiene.rs:24:43: 24:45 (#3) }, Punct { ch: ':', spacing: Alone, span: $DIR/meta-macro-hygiene.rs:24:43: 24:45 (#3) }, Ident { ident: "dummy", span: $DIR/meta-macro-hygiene.rs:24:45: 24:50 (#3) }, Punct { ch: '!', spacing: Alone, span: $DIR/meta-macro-hygiene.rs:24:50: 24:51 (#3) }, Group { delimiter: Parenthesis, stream: TokenStream [], span: $DIR/meta-macro-hygiene.rs:24:51: 24:53 (#3) }]
|
||||
Respanned: TokenStream [Ident { ident: "$crate", span: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#4) }, Punct { ch: ':', spacing: Joint, span: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#4) }, Punct { ch: ':', spacing: Alone, span: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#4) }, Ident { ident: "dummy", span: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#4) }, Punct { ch: '!', spacing: Alone, span: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#4) }, Group { delimiter: Parenthesis, stream: TokenStream [], span: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#4) }]
|
||||
Def site: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#5)
|
||||
Input: TokenStream [Ident { ident: "$crate", span: $DIR/meta-macro-hygiene.rs:24:37: 24:43 (#4) }, Punct { ch: ':', spacing: Joint, span: $DIR/meta-macro-hygiene.rs:24:43: 24:45 (#4) }, Punct { ch: ':', spacing: Alone, span: $DIR/meta-macro-hygiene.rs:24:43: 24:45 (#4) }, Ident { ident: "dummy", span: $DIR/meta-macro-hygiene.rs:24:45: 24:50 (#4) }, Punct { ch: '!', spacing: Alone, span: $DIR/meta-macro-hygiene.rs:24:50: 24:51 (#4) }, Group { delimiter: Parenthesis, stream: TokenStream [], span: $DIR/meta-macro-hygiene.rs:24:51: 24:53 (#4) }]
|
||||
Respanned: TokenStream [Ident { ident: "$crate", span: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#5) }, Punct { ch: ':', spacing: Joint, span: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#5) }, Punct { ch: ':', spacing: Alone, span: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#5) }, Ident { ident: "dummy", span: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#5) }, Punct { ch: '!', spacing: Alone, span: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#5) }, Group { delimiter: Parenthesis, stream: TokenStream [], span: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#5) }]
|
||||
#![feature /* 0#0 */(prelude_import)]
|
||||
// ignore-tidy-linelength
|
||||
// aux-build:make-macro.rs
|
||||
|
@ -47,18 +47,20 @@ Expansions:
|
|||
0: parent: ExpnId(0), call_site_ctxt: #0, def_site_ctxt: #0, kind: Root
|
||||
1: parent: ExpnId(0), call_site_ctxt: #0, def_site_ctxt: #0, kind: AstPass(StdImports)
|
||||
2: parent: ExpnId(0), call_site_ctxt: #0, def_site_ctxt: #0, kind: Macro(Bang, "produce_it")
|
||||
3: parent: ExpnId(2), call_site_ctxt: #3, def_site_ctxt: #0, kind: Macro(Bang, "meta_macro::print_def_site")
|
||||
4: parent: ExpnId(3), call_site_ctxt: #4, def_site_ctxt: #0, kind: Macro(Bang, "$crate::dummy")
|
||||
3: parent: ExpnId(0), call_site_ctxt: #0, def_site_ctxt: #0, kind: AstPass(StdImports)
|
||||
4: parent: ExpnId(2), call_site_ctxt: #4, def_site_ctxt: #0, kind: Macro(Bang, "meta_macro::print_def_site")
|
||||
5: parent: ExpnId(4), call_site_ctxt: #5, def_site_ctxt: #0, kind: Macro(Bang, "$crate::dummy")
|
||||
|
||||
SyntaxContexts:
|
||||
#0: parent: #0, outer_mark: (ExpnId(0), Opaque)
|
||||
#1: parent: #0, outer_mark: (ExpnId(1), Opaque)
|
||||
#2: parent: #0, outer_mark: (ExpnId(1), Transparent)
|
||||
#3: parent: #0, outer_mark: (ExpnId(2), SemiTransparent)
|
||||
#4: parent: #0, outer_mark: (ExpnId(3), Opaque)
|
||||
#5: parent: #3, outer_mark: (ExpnId(3), Transparent)
|
||||
#6: parent: #0, outer_mark: (ExpnId(3), SemiTransparent)
|
||||
#7: parent: #0, outer_mark: (ExpnId(4), Opaque)
|
||||
#8: parent: #4, outer_mark: (ExpnId(4), Transparent)
|
||||
#9: parent: #4, outer_mark: (ExpnId(4), SemiTransparent)
|
||||
#3: parent: #0, outer_mark: (ExpnId(3), Opaque)
|
||||
#4: parent: #0, outer_mark: (ExpnId(2), SemiTransparent)
|
||||
#5: parent: #0, outer_mark: (ExpnId(4), Opaque)
|
||||
#6: parent: #4, outer_mark: (ExpnId(4), Transparent)
|
||||
#7: parent: #0, outer_mark: (ExpnId(4), SemiTransparent)
|
||||
#8: parent: #0, outer_mark: (ExpnId(5), Opaque)
|
||||
#9: parent: #5, outer_mark: (ExpnId(5), Transparent)
|
||||
#10: parent: #5, outer_mark: (ExpnId(5), SemiTransparent)
|
||||
*/
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
Def site: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#3)
|
||||
Def site: $DIR/auxiliary/make-macro.rs:7:9: 16:10 (#4)
|
||||
Input: TokenStream []
|
||||
Respanned: TokenStream []
|
||||
|
|
|
@ -5,10 +5,10 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
stream: TokenStream [
|
||||
Ident {
|
||||
ident: "FirstStruct",
|
||||
span: $DIR/auxiliary/nested-macro-rules.rs:15:14: 15:25 (#5),
|
||||
span: $DIR/auxiliary/nested-macro-rules.rs:15:14: 15:25 (#7),
|
||||
},
|
||||
],
|
||||
span: $DIR/auxiliary/nested-macro-rules.rs:9:27: 9:32 (#4),
|
||||
span: $DIR/auxiliary/nested-macro-rules.rs:9:27: 9:32 (#6),
|
||||
},
|
||||
]
|
||||
PRINT-BANG INPUT (DISPLAY): SecondStruct
|
||||
|
@ -18,9 +18,9 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
stream: TokenStream [
|
||||
Ident {
|
||||
ident: "SecondStruct",
|
||||
span: $DIR/nested-macro-rules.rs:21:38: 21:50 (#11),
|
||||
span: $DIR/nested-macro-rules.rs:21:38: 21:50 (#13),
|
||||
},
|
||||
],
|
||||
span: $DIR/auxiliary/nested-macro-rules.rs:9:27: 9:32 (#10),
|
||||
span: $DIR/auxiliary/nested-macro-rules.rs:9:27: 9:32 (#12),
|
||||
},
|
||||
]
|
||||
|
|
|
@ -4,7 +4,7 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
kind: Str,
|
||||
symbol: "hi",
|
||||
suffix: None,
|
||||
span: $DIR/nodelim-groups.rs:16:42: 16:46 (#3),
|
||||
span: $DIR/nodelim-groups.rs:16:42: 16:46 (#4),
|
||||
},
|
||||
Group {
|
||||
delimiter: None,
|
||||
|
@ -44,7 +44,7 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/nodelim-groups.rs:20:27: 20:28 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/nodelim-groups.rs:16:47: 16:51 (#3),
|
||||
span: $DIR/nodelim-groups.rs:16:47: 16:51 (#4),
|
||||
},
|
||||
Group {
|
||||
delimiter: Parenthesis,
|
||||
|
@ -53,21 +53,21 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
kind: Integer,
|
||||
symbol: "1",
|
||||
suffix: None,
|
||||
span: $DIR/nodelim-groups.rs:16:53: 16:54 (#3),
|
||||
span: $DIR/nodelim-groups.rs:16:53: 16:54 (#4),
|
||||
},
|
||||
Punct {
|
||||
ch: '+',
|
||||
spacing: Alone,
|
||||
span: $DIR/nodelim-groups.rs:16:55: 16:56 (#3),
|
||||
span: $DIR/nodelim-groups.rs:16:55: 16:56 (#4),
|
||||
},
|
||||
Literal {
|
||||
kind: Integer,
|
||||
symbol: "1",
|
||||
suffix: None,
|
||||
span: $DIR/nodelim-groups.rs:16:57: 16:58 (#3),
|
||||
span: $DIR/nodelim-groups.rs:16:57: 16:58 (#4),
|
||||
},
|
||||
],
|
||||
span: $DIR/nodelim-groups.rs:16:52: 16:59 (#3),
|
||||
span: $DIR/nodelim-groups.rs:16:52: 16:59 (#4),
|
||||
},
|
||||
]
|
||||
PRINT-BANG INPUT (DISPLAY): "hi" "hello".len() + "world".len() (1 + 1)
|
||||
|
@ -76,7 +76,7 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
kind: Str,
|
||||
symbol: "hi",
|
||||
suffix: None,
|
||||
span: $DIR/nodelim-groups.rs:16:42: 16:46 (#8),
|
||||
span: $DIR/nodelim-groups.rs:16:42: 16:46 (#9),
|
||||
},
|
||||
Group {
|
||||
delimiter: None,
|
||||
|
@ -105,12 +105,12 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/nodelim-groups.rs:21:28: 21:30 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/nodelim-groups.rs:15:49: 15:54 (#7),
|
||||
span: $DIR/nodelim-groups.rs:15:49: 15:54 (#8),
|
||||
},
|
||||
Punct {
|
||||
ch: '+',
|
||||
spacing: Alone,
|
||||
span: $DIR/nodelim-groups.rs:15:55: 15:56 (#7),
|
||||
span: $DIR/nodelim-groups.rs:15:55: 15:56 (#8),
|
||||
},
|
||||
Group {
|
||||
delimiter: None,
|
||||
|
@ -136,10 +136,10 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
span: $DIR/nodelim-groups.rs:21:44: 21:46 (#0),
|
||||
},
|
||||
],
|
||||
span: $DIR/nodelim-groups.rs:15:57: 15:62 (#7),
|
||||
span: $DIR/nodelim-groups.rs:15:57: 15:62 (#8),
|
||||
},
|
||||
],
|
||||
span: $DIR/nodelim-groups.rs:16:47: 16:51 (#8),
|
||||
span: $DIR/nodelim-groups.rs:16:47: 16:51 (#9),
|
||||
},
|
||||
Group {
|
||||
delimiter: Parenthesis,
|
||||
|
@ -148,20 +148,20 @@ PRINT-BANG INPUT (DEBUG): TokenStream [
|
|||
kind: Integer,
|
||||
symbol: "1",
|
||||
suffix: None,
|
||||
span: $DIR/nodelim-groups.rs:16:53: 16:54 (#8),
|
||||
span: $DIR/nodelim-groups.rs:16:53: 16:54 (#9),
|
||||
},
|
||||
Punct {
|
||||
ch: '+',
|
||||
spacing: Alone,
|
||||
span: $DIR/nodelim-groups.rs:16:55: 16:56 (#8),
|
||||
span: $DIR/nodelim-groups.rs:16:55: 16:56 (#9),
|
||||
},
|
||||
Literal {
|
||||
kind: Integer,
|
||||
symbol: "1",
|
||||
suffix: None,
|
||||
span: $DIR/nodelim-groups.rs:16:57: 16:58 (#8),
|
||||
span: $DIR/nodelim-groups.rs:16:57: 16:58 (#9),
|
||||
},
|
||||
],
|
||||
span: $DIR/nodelim-groups.rs:16:52: 16:59 (#8),
|
||||
span: $DIR/nodelim-groups.rs:16:52: 16:59 (#9),
|
||||
},
|
||||
]
|
||||
|
|
Loading…
Add table
Reference in a new issue