diff --git a/eslint/babel-eslint-parser/index.js b/eslint/babel-eslint-parser/index.js index efbac4bf3b..a1ceaa8b6b 100644 --- a/eslint/babel-eslint-parser/index.js +++ b/eslint/babel-eslint-parser/index.js @@ -338,7 +338,7 @@ function monkeypatch() { } } if (node.filter) { - this.visit(block.filter); + this.visit(node.filter); } this.visit(node.body); this.close(node); diff --git a/eslint/babel-eslint-parser/test/non-regression.js b/eslint/babel-eslint-parser/test/non-regression.js index fee81e582d..3709688a96 100644 --- a/eslint/babel-eslint-parser/test/non-regression.js +++ b/eslint/babel-eslint-parser/test/non-regression.js @@ -1062,6 +1062,17 @@ describe("verify", function () { [] ); }); + + it("visiting filter in comprehension", function () { + verifyAndAssertMessages([ + "function test(items, val) {", + "return [ for (i of items) if (i === val) i ];", + "} test;" + ].join("\n"), + { "no-unused-vars": 1, "no-undef": 1 }, + [] + ); + }); }); describe("decorators #72", function () {