-
-
Notifications
You must be signed in to change notification settings - Fork 606
Closed
Description
- Rollup Plugin Name: pluginutils
- Rollup Plugin Version: 3.0.1
- Rollup Version:
- Operating System (or Browser): Windows 7
- Node Version: 13.5.0
How Do We Reproduce?
const {parse} = require("acorn");
const {attachScopes} = require("@rollup/pluginutils");
const code = `
for (const foo of []) {
const bar = 1;
var baz = 2;
}
for (var bak of []);
`;
const ast = parse(code);
let scope = attachScopes(ast, "scope");
console.log(scope.contains("foo"));
console.log(scope.contains("bar"));
console.log(scope.contains("baz"));
console.log(scope.contains("bak"));
https://repl.it/@eight041/attachScopes-and-for-scope?language=nodejs
Expected Behavior
false
false
true
true
Actual Behavior
true
false
true
true
I'm a little surprised that we didn't find this bug earlier. This breaks a lot of stuff IMHO.