@@ -250,26 +250,25 @@ pub(super) fn transcribe<'a>(
250
250
// the meta-var.
251
251
let ident = MacroRulesNormalizedIdent :: new ( original_ident) ;
252
252
if let Some ( cur_matched) = lookup_cur_matched ( ident, interp, & repeats) {
253
- match cur_matched {
253
+ let tt = match cur_matched {
254
254
MatchedTokenTree ( tt) => {
255
255
// `tt`s are emitted into the output stream directly as "raw tokens",
256
256
// without wrapping them into groups.
257
- let tt = maybe_use_metavar_location ( cx, & stack, sp, tt, & mut marker) ;
258
- result. push ( tt) ;
257
+ maybe_use_metavar_location ( cx, & stack, sp, tt, & mut marker)
259
258
}
260
259
MatchedNonterminal ( nt) => {
261
260
// Other variables are emitted into the output stream as groups with
262
261
// `Delimiter::Invisible` to maintain parsing priorities.
263
262
// `Interpolated` is currently used for such groups in rustc parser.
264
263
marker. visit_span ( & mut sp) ;
265
- result
266
- . push ( TokenTree :: token_alone ( token:: Interpolated ( nt. clone ( ) ) , sp) ) ;
264
+ TokenTree :: token_alone ( token:: Interpolated ( nt. clone ( ) ) , sp)
267
265
}
268
266
MatchedSeq ( ..) => {
269
267
// We were unable to descend far enough. This is an error.
270
268
return Err ( cx. dcx ( ) . create_err ( VarStillRepeating { span : sp, ident } ) ) ;
271
269
}
272
- }
270
+ } ;
271
+ result. push ( tt)
273
272
} else {
274
273
// If we aren't able to match the meta-var, we push it back into the result but
275
274
// with modified syntax context. (I believe this supports nested macros).
0 commit comments