fix AST_PropAccess in collapse_vars (#2370)

fixes #2364
This commit is contained in:
Alex Lam S.L
2017-10-17 18:33:03 +08:00
committed by GitHub
parent fe647b083e
commit f2b9c11e2a
2 changed files with 63 additions and 2 deletions

View File

@@ -2601,7 +2601,7 @@ prop_side_effects_2: {
]
}
issue_2364: {
issue_2365: {
options = {
collapse_vars: true,
pure_getters: true,
@@ -2652,3 +2652,62 @@ issue_2364: {
"1",
]
}
issue_2364_1: {
options = {
collapse_vars: true,
pure_getters: true,
}
input: {
function inc(obj) {
return obj.count++;
}
function foo() {
var first = arguments[0];
var result = inc(first);
return foo.amount = first.count, result;
}
var data = {
count: 0,
};
var answer = foo(data);
console.log(foo.amount, answer);
}
expect: {
function inc(obj) {
return obj.count++;
}
function foo() {
var first = arguments[0];
var result = inc(first);
return foo.amount = first.count, result;
}
var data = {
count: 0
};
var answer = foo(data);
console.log(foo.amount, answer);
}
expect_stdout: "1 0"
}
issue_2364_2: {
options = {
collapse_vars: true,
pure_getters: true,
}
input: {
function callValidate() {
var validate = compilation.validate;
var result = validate.apply(null, arguments);
return callValidate.errors = validate.errors, result;
}
}
expect: {
function callValidate() {
var validate = compilation.validate;
var result = validate.apply(null, arguments);
return callValidate.errors = validate.errors, result;
}
}
}