Skip to content

Commit f7c60b7

Browse files
committed
---
yaml --- r: 274303 b: refs/heads/stable c: 9d8c64b h: refs/heads/master i: 274301: 2980616 274299: 636946a 274295: 6a006a1 274287: 48ba7cf 274271: dbce758 274239: dca8a68 274175: 23ea8c6
1 parent 55fa17b commit f7c60b7

File tree

2 files changed

+19
-18
lines changed

2 files changed

+19
-18
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ refs/heads/tmp: e06d2ad9fcd5027bcaac5b08fc9aa39a49d0ecd3
2929
refs/tags/1.0.0-alpha.2: 4c705f6bc559886632d3871b04f58aab093bfa2f
3030
refs/tags/homu-tmp: c0221c8897db309a79990367476177b1230bb264
3131
refs/tags/1.0.0-beta: 8cbb92b53468ee2b0c2d3eeb8567005953d40828
32-
refs/heads/stable: 2bc8f4ff80a4343bacfcab9629eb681e576dee48
32+
refs/heads/stable: 9d8c64b9966a2e6fe6b022491eb3fb7bb81ec292
3333
refs/tags/1.0.0: 55bd4f8ff2b323f317ae89e254ce87162d52a375
3434
refs/tags/1.1.0: bc3c16f09287e5545c1d3f76b7abd54f2eca868b
3535
refs/tags/1.2.0: f557861f822c34f07270347b94b5280de20a597e

branches/stable/src/libsyntax/parse/parser.rs

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -239,12 +239,13 @@ macro_rules! interpolated_or_expr_span {
239239
($p:expr, $parse_expr:expr) => {
240240
{
241241
let is_interpolated = $p.token.is_interpolated();
242-
let e = $parse_expr;
243-
if is_interpolated {
244-
($p.last_span, e)
245-
} else {
246-
(e.span, e)
247-
}
242+
$parse_expr.map(|e| {
243+
if is_interpolated {
244+
($p.last_span, e)
245+
} else {
246+
(e.span, e)
247+
}
248+
})
248249
}
249250
}
250251
}
@@ -2338,7 +2339,7 @@ impl<'a> Parser<'a> {
23382339
-> PResult<'a, P<Expr>> {
23392340
let attrs = try!(self.parse_or_use_outer_attributes(already_parsed_attrs));
23402341

2341-
let (span, b) = interpolated_or_expr_span!(self, try!(self.parse_bottom_expr()));
2342+
let (span, b) = try!(interpolated_or_expr_span!(self, self.parse_bottom_expr()));
23422343
self.parse_dot_or_call_expr_with(b, span.lo, attrs)
23432344
}
23442345

@@ -2724,30 +2725,30 @@ impl<'a> Parser<'a> {
27242725
let ex = match self.token {
27252726
token::Not => {
27262727
self.bump();
2727-
let (span, e) = interpolated_or_expr_span!(self,
2728-
try!(self.parse_prefix_expr(None)));
2728+
let (span, e) = try!(interpolated_or_expr_span!(self,
2729+
self.parse_prefix_expr(None)));
27292730
hi = span.hi;
27302731
self.mk_unary(UnNot, e)
27312732
}
27322733
token::BinOp(token::Minus) => {
27332734
self.bump();
2734-
let (span, e) = interpolated_or_expr_span!(self,
2735-
try!(self.parse_prefix_expr(None)));
2735+
let (span, e) = try!(interpolated_or_expr_span!(self,
2736+
self.parse_prefix_expr(None)));
27362737
hi = span.hi;
27372738
self.mk_unary(UnNeg, e)
27382739
}
27392740
token::BinOp(token::Star) => {
27402741
self.bump();
2741-
let (span, e) = interpolated_or_expr_span!(self,
2742-
try!(self.parse_prefix_expr(None)));
2742+
let (span, e) = try!(interpolated_or_expr_span!(self,
2743+
self.parse_prefix_expr(None)));
27432744
hi = span.hi;
27442745
self.mk_unary(UnDeref, e)
27452746
}
27462747
token::BinOp(token::And) | token::AndAnd => {
27472748
try!(self.expect_and());
27482749
let m = try!(self.parse_mutability());
2749-
let (span, e) = interpolated_or_expr_span!(self,
2750-
try!(self.parse_prefix_expr(None)));
2750+
let (span, e) = try!(interpolated_or_expr_span!(self,
2751+
self.parse_prefix_expr(None)));
27512752
hi = span.hi;
27522753
ExprAddrOf(m, e)
27532754
}
@@ -2766,8 +2767,8 @@ impl<'a> Parser<'a> {
27662767
}
27672768
token::Ident(..) if self.token.is_keyword(keywords::Box) => {
27682769
self.bump();
2769-
let (span, e) = interpolated_or_expr_span!(self,
2770-
try!(self.parse_prefix_expr(None)));
2770+
let (span, e) = try!(interpolated_or_expr_span!(self,
2771+
self.parse_prefix_expr(None)));
27712772
hi = span.hi;
27722773
ExprBox(e)
27732774
}

0 commit comments

Comments
 (0)