diff options
| author | Daan Sprenkels <dsprenkels@gmail.com> | 2016-01-14 16:04:35 +0100 |
|---|---|---|
| committer | Manish Goregaokar <manishsmail@gmail.com> | 2016-01-25 20:56:12 +0530 |
| commit | 2b1e2732930830fc295d26bfb4bb29931e7e84ac (patch) | |
| tree | 6f9614782baba784c3b08fd6392884a995bcb3da | |
| parent | 79f2cff44ec62cf42f6c97d28dc4286de683b1e5 (diff) | |
| download | rust-2b1e2732930830fc295d26bfb4bb29931e7e84ac.tar.gz rust-2b1e2732930830fc295d26bfb4bb29931e7e84ac.zip | |
Update qquote.rs test case and make unexpected `let` error fatal
| -rw-r--r-- | src/libsyntax/parse/parser.rs | 12 | ||||
| -rw-r--r-- | src/test/run-fail-fulldeps/qquote.rs | 2 |
2 files changed, 7 insertions, 7 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index f3809455fe0..c071670ea6e 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -2134,12 +2134,6 @@ impl<'a> Parser<'a> { } hi = self.last_span.hi; } - _ if self.token.is_keyword(keywords::Let) => { - // Catch this syntax error here, instead of in `check_strict_keywords`, so that - // we can explicitly mention that let is not to be used as an expression - let msg = "`let` is not an expression, so it cannot be used in this way"; - return Err(self.diagnostic().struct_span_err(self.span, &msg)); - }, _ => { if self.eat_lt() { let (qself, path) = @@ -2162,6 +2156,12 @@ impl<'a> Parser<'a> { let lo = self.last_span.lo; return self.parse_while_expr(None, lo, attrs); } + if self.token.is_keyword(keywords::Let) { + // Catch this syntax error here, instead of in `check_strict_keywords`, so + // that we can explicitly mention that let is not to be used as an expression + let msg = "`let` is not an expression, so it cannot be used in this way"; + self.span_err(self.span, msg); + } if self.token.is_lifetime() { let lifetime = self.get_lifetime(); let lo = self.span.lo; diff --git a/src/test/run-fail-fulldeps/qquote.rs b/src/test/run-fail-fulldeps/qquote.rs index d42a777a019..297a1da25b5 100644 --- a/src/test/run-fail-fulldeps/qquote.rs +++ b/src/test/run-fail-fulldeps/qquote.rs @@ -10,7 +10,7 @@ // ignore-cross-compile -// error-pattern:expected identifier, found keyword `let` +// error-pattern:`let` is not an expression, so it cannot be used in this way #![feature(quote, rustc_private)] |
