diff options
| author | bors <bors@rust-lang.org> | 2015-09-04 05:15:22 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2015-09-04 05:15:22 +0000 |
| commit | 791e7bcb418381480bf10cb87ef5da769be7143f (patch) | |
| tree | fdb330304834cc452e1928359b6bff54849af28c /src/libsyntax/parse/parser.rs | |
| parent | 35b14544e1f5dfdbae169eafe34c393c47d7c1ad (diff) | |
| parent | c493084ec1b35b7ab59aa0878354bca10a610360 (diff) | |
| download | rust-791e7bcb418381480bf10cb87ef5da769be7143f.tar.gz rust-791e7bcb418381480bf10cb87ef5da769be7143f.zip | |
Auto merge of #28170 - nagisa:loopctl-label-spans, r=alexcrichton
r? @alexcrichton
Diffstat (limited to 'src/libsyntax/parse/parser.rs')
| -rw-r--r-- | src/libsyntax/parse/parser.rs | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index 337e855f900..5017d079480 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -2143,9 +2143,12 @@ impl<'a> Parser<'a> { } if try!(self.eat_keyword(keywords::Continue) ){ let ex = if self.token.is_lifetime() { - let lifetime = self.get_lifetime(); + let ex = ExprAgain(Some(Spanned{ + node: self.get_lifetime(), + span: self.span + })); try!(self.bump()); - ExprAgain(Some(lifetime)) + ex } else { ExprAgain(None) }; @@ -2161,7 +2164,6 @@ impl<'a> Parser<'a> { UnsafeBlock(ast::UserProvided)); } if try!(self.eat_keyword(keywords::Return) ){ - // RETURN expression if self.token.can_begin_expr() { let e = try!(self.parse_expr_nopanic()); hi = e.span.hi; @@ -2170,11 +2172,12 @@ impl<'a> Parser<'a> { ex = ExprRet(None); } } else if try!(self.eat_keyword(keywords::Break) ){ - // BREAK expression if self.token.is_lifetime() { - let lifetime = self.get_lifetime(); + ex = ExprBreak(Some(Spanned { + node: self.get_lifetime(), + span: self.span + })); try!(self.bump()); - ex = ExprBreak(Some(lifetime)); } else { ex = ExprBreak(None); } |
