Correct error message for invalid ref/mut bindings

Closes #15914.
This commit is contained in:
P1start 2014-09-13 14:09:22 +12:00
parent 45044124e4
commit 042cdeefc7
2 changed files with 18 additions and 3 deletions

View file

@ -3402,9 +3402,10 @@ impl<'a> Parser<'a> {
binding_mode: ast::BindingMode)
-> ast::Pat_ {
if !is_plain_ident(&self.token) {
let last_span = self.last_span;
self.span_fatal(last_span,
"expected identifier, found path");
let span = self.span;
let tok_str = self.this_token_to_string();
self.span_fatal(span,
format!("expected identifier, found `{}`", tok_str).as_slice());
}
let ident = self.parse_ident();
let last_span = self.last_span;

View file

@ -0,0 +1,14 @@
// Copyright 2014 The Rust Project Developers. See the COPYRIGHT
// file at the top-level directory of this distribution and at
// http://rust-lang.org/COPYRIGHT.
//
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
// option. This file may not be copied, modified, or distributed
// except according to those terms.
fn main() {
let ref
(); //~ ERROR expected identifier, found `(`
}