@@ -3253,7 +3253,8 @@ impl<'a> Parser<'a> {
3253
3253
let tts = try!( self . parse_seq_to_end ( & token:: CloseDelim ( delim) ,
3254
3254
seq_sep_none ( ) , |p| p. parse_token_tree ( ) ) ) ;
3255
3255
let mac = Mac_ { path : path, tts : tts, ctxt : EMPTY_CTXT } ;
3256
- pat = PatMac ( codemap:: Spanned { node : mac, span : self . span } ) ;
3256
+ pat = PatMac ( codemap:: Spanned { node : mac,
3257
+ span : mk_sp ( lo, self . last_span . hi ) } ) ;
3257
3258
} else {
3258
3259
// Parse ident @ pat
3259
3260
// This can give false positives and parse nullary enums,
@@ -4475,6 +4476,7 @@ impl<'a> Parser<'a> {
4475
4476
let last_span = self . last_span ;
4476
4477
self . complain_if_pub_macro ( vis, last_span) ;
4477
4478
4479
+ let lo = self . span . lo ;
4478
4480
let pth = try!( self . parse_path ( NoTypesAllowed ) ) ;
4479
4481
try!( self . expect ( & token:: Not ) ) ;
4480
4482
@@ -4485,8 +4487,8 @@ impl<'a> Parser<'a> {
4485
4487
|p| p. parse_token_tree ( ) ) ) ;
4486
4488
let m_ = Mac_ { path : pth, tts : tts, ctxt : EMPTY_CTXT } ;
4487
4489
let m: ast:: Mac = codemap:: Spanned { node : m_,
4488
- span : mk_sp ( self . span . lo ,
4489
- self . span . hi ) } ;
4490
+ span : mk_sp ( lo,
4491
+ self . last_span . hi ) } ;
4490
4492
if delim != token:: Brace {
4491
4493
try!( self . expect ( & token:: Semi ) )
4492
4494
}
@@ -5513,6 +5515,8 @@ impl<'a> Parser<'a> {
5513
5515
let last_span = self . last_span ;
5514
5516
self . complain_if_pub_macro ( visibility, last_span) ;
5515
5517
5518
+ let mac_lo = self . span . lo ;
5519
+
5516
5520
// item macro.
5517
5521
let pth = try!( self . parse_path ( NoTypesAllowed ) ) ;
5518
5522
try!( self . expect ( & token:: Not ) ) ;
@@ -5533,8 +5537,8 @@ impl<'a> Parser<'a> {
5533
5537
// single-variant-enum... :
5534
5538
let m = Mac_ { path : pth, tts : tts, ctxt : EMPTY_CTXT } ;
5535
5539
let m: ast:: Mac = codemap:: Spanned { node : m,
5536
- span : mk_sp ( self . span . lo ,
5537
- self . span . hi ) } ;
5540
+ span : mk_sp ( mac_lo ,
5541
+ self . last_span . hi ) } ;
5538
5542
5539
5543
if delim != token:: Brace {
5540
5544
if !try!( self . eat ( & token:: Semi ) ) {
0 commit comments