Skip to content

Commit d7901e0

Browse files
committed
---
yaml --- r: 168523 b: refs/heads/batch c: 57a74ed h: refs/heads/master i: 168521: 6a9c083 168519: f23c726 v: v3
1 parent 8081bac commit d7901e0

File tree

2 files changed

+12
-5
lines changed

2 files changed

+12
-5
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,5 +29,5 @@ refs/tags/0.12.0: f0c419429ef30723ceaf6b42f9b5a2aeb5d2e2d1
2929
refs/heads/issue-18208-method-dispatch-2: 9e1eae4fb9b6527315b4441cf8a0f5ca911d1671
3030
refs/heads/automation-fail: 1bf06495443584539b958873e04cc2f864ab10e4
3131
refs/heads/issue-18208-method-dispatch-3-quick-reject: 2009f85b9f99dedcec4404418eda9ddba90258a2
32-
refs/heads/batch: d45b5d2ed9b43b3ad573482fb8820a382f20289e
32+
refs/heads/batch: 57a74eda8811bb04da2e081e3029aeec2f0bdcf4
3333
refs/heads/building: 126db549b038c84269a1e4fe46f051b2c15d6970

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

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2146,14 +2146,14 @@ impl<'a> Parser<'a> {
21462146
(&None, &Some(ref e)) => (e.span.lo, e.span.hi),
21472147
(&None, &None) => (DUMMY_SP.lo, DUMMY_SP.hi),
21482148
};
2149-
ExprIndex(expr, self.mk_expr(lo, hi, ExprRange(start, end)))
2149+
ExprIndex(expr, self.mk_expr(lo, hi, self.mk_range(start, end)))
21502150
}
21512151

21522152
pub fn mk_range(&mut self,
2153-
start: P<Expr>,
2153+
start: Option<P<Expr>>,
21542154
end: Option<P<Expr>>)
21552155
-> ast::Expr_ {
2156-
ExprRange(Some(start), end)
2156+
ExprRange(start, end)
21572157
}
21582158

21592159
pub fn mk_field(&mut self, expr: P<Expr>, ident: ast::SpannedIdent) -> ast::Expr_ {
@@ -2676,7 +2676,7 @@ impl<'a> Parser<'a> {
26762676
};
26772677

26782678
let hi = self.span.hi;
2679-
let range = self.mk_range(e, opt_end);
2679+
let range = self.mk_range(Some(e), opt_end);
26802680
return self.mk_expr(lo, hi, range);
26812681
}
26822682
_ => return e
@@ -2889,6 +2889,13 @@ impl<'a> Parser<'a> {
28892889
hi = e.span.hi;
28902890
ex = self.mk_unary(UnUniq, e);
28912891
}
2892+
token::DotDot if !self.restrictions.contains(RESTRICTION_NO_DOTS) => {
2893+
// A range, closed above: `..expr`.
2894+
self.bump();
2895+
let e = self.parse_prefix_expr();
2896+
hi = e.span.hi;
2897+
ex = self.mk_range(None, Some(e));
2898+
}
28922899
token::Ident(_, _) => {
28932900
if !self.token.is_keyword(keywords::Box) {
28942901
return self.parse_dot_or_call_expr();

0 commit comments

Comments
 (0)