From 3b06d0100ca39f463f2bea67a13ed296e13e6628 Mon Sep 17 00:00:00 2001 From: Mike Pennisi Date: Tue, 18 Oct 2016 11:52:01 -0400 Subject: [PATCH] [[FIX]] Report error for offending token value When a "rest" operator is not followed by the identifier, report the value of the unexpected token (not the "rest" operator itself). --- src/jshint.js | 2 +- tests/unit/parser.js | 22 ++++++++++++---------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/src/jshint.js b/src/jshint.js index 5039577a17..2a3d736b19 100644 --- a/src/jshint.js +++ b/src/jshint.js @@ -1512,7 +1512,7 @@ var JSHINT = (function() { } if (!state.tokens.next.identifier) { - warning("E024", state.tokens.curr, "..."); + warning("E024", state.tokens.curr, state.tokens.next.id); return; } diff --git a/tests/unit/parser.js b/tests/unit/parser.js index 01b4e9acae..eeb5cbca32 100644 --- a/tests/unit/parser.js +++ b/tests/unit/parser.js @@ -7588,7 +7588,9 @@ exports.extraRestOperator = function (test) { .addError(1, "Unexpected '...'.") .addError(2, "Unexpected '...'.") .addError(3, "Unexpected '...'.") + .addError(3, "Unexpected ')'.") .addError(4, "Unexpected '...'.") + .addError(4, "Unexpected ')'.") .addError(5, "Unexpected '...'.") .addError(6, "Unexpected '...'.") .addError(7, "Unexpected '...'.") @@ -7624,16 +7626,16 @@ exports.restOperatorWithoutIdentifier = function (test) { ]; TestRun(test) - .addError(1, "Unexpected '...'.") - .addError(2, "Unexpected '...'.") - .addError(3, "Unexpected '...'.") - .addError(4, "Unexpected '...'.") - .addError(5, "Unexpected '...'.") - .addError(6, "Unexpected '...'.") - .addError(7, "Unexpected '...'.") - .addError(8, "Unexpected '...'.") - .addError(9, "Unexpected '...'.") - .addError(10, "Unexpected '...'.") + .addError(1, "Unexpected ']'.") + .addError(2, "Unexpected ']'.") + .addError(3, "Unexpected ')'.") + .addError(4, "Unexpected ')'.") + .addError(5, "Unexpected ']'.") + .addError(6, "Unexpected ']'.") + .addError(7, "Unexpected ')'.") + .addError(8, "Unexpected ')'.") + .addError(9, "Unexpected ']'.") + .addError(10, "Unexpected ']'.") .test(code, { esnext: true }); test.done();