node.right.walk(tw);
var marker = new TreeWalker(function(node) {
if (node instanceof AST_Destructured) return;
- if (node instanceof AST_DestructuredKeyVal) {
+ if (node instanceof AST_DefaultValue) {
+ node.value.walk(tw);
+ node.name.walk(marker);
+ } else if (node instanceof AST_DestructuredKeyVal) {
if (node.key instanceof AST_Node) {
push();
segment.block = node;
node.name.mark_symbol(node.value ? function(node) {
if (!(node instanceof AST_SymbolDeclaration)) return;
if (node instanceof AST_SymbolVar) {
- mark(node, false);
+ mark(node);
} else {
references[node.definition().id] = false;
}
expect_stdout: "PASS"
node_version: ">=8"
}
+
+issue_4523: {
+ options = {
+ merge_vars: true,
+ }
+ input: {
+ console.log(function() {
+ var a, b;
+ [ a = b = false ] = [ "FAIL" ];
+ return b || "PASS";
+ }());
+ }
+ expect: {
+ console.log(function() {
+ var a, b;
+ [ a = b = false ] = [ "FAIL" ];
+ return b || "PASS";
+ }());
+ }
+ expect_stdout: "PASS"
+ node_version: ">=6"
+}