Skip to content

Commit d45b5d2

Browse files
committed
Disallow [_, ..n] syntax for fixed length arrays and repeating array constructors
Closes rust-lang#19999 [breaking-change] Use [_; n] instead.
1 parent 39d7402 commit d45b5d2

File tree

1 file changed

+2
-15
lines changed

1 file changed

+2
-15
lines changed

src/libsyntax/parse/parser.rs

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1716,12 +1716,7 @@ impl<'a> Parser<'a> {
17161716
}
17171717

17181718
pub fn maybe_parse_fixed_length_of_vec(&mut self) -> Option<P<ast::Expr>> {
1719-
if self.check(&token::Comma) &&
1720-
self.look_ahead(1, |t| *t == token::DotDot) {
1721-
self.bump();
1722-
self.bump();
1723-
Some(self.parse_expr_res(RESTRICTION_NO_DOTS))
1724-
} else if self.check(&token::Semi) {
1719+
if self.check(&token::Semi) {
17251720
self.bump();
17261721
Some(self.parse_expr())
17271722
} else {
@@ -2277,15 +2272,7 @@ impl<'a> Parser<'a> {
22772272
} else {
22782273
// Nonempty vector.
22792274
let first_expr = self.parse_expr();
2280-
if self.check(&token::Comma) &&
2281-
self.look_ahead(1, |t| *t == token::DotDot) {
2282-
// Repeating vector syntax: [ 0, ..512 ]
2283-
self.bump();
2284-
self.bump();
2285-
let count = self.parse_expr();
2286-
self.expect(&token::CloseDelim(token::Bracket));
2287-
ex = ExprRepeat(first_expr, count);
2288-
} else if self.check(&token::Semi) {
2275+
if self.check(&token::Semi) {
22892276
// Repeating vector syntax: [ 0; 512 ]
22902277
self.bump();
22912278
let count = self.parse_expr();

0 commit comments

Comments
 (0)