enhance reduce_vars (#5164)

- fix corner case in `join_vars`
This commit is contained in:
Alex Lam S.L
2021-11-04 18:36:39 +08:00
committed by GitHub
parent f9a4b36dd1
commit 6e4aa0326f
3 changed files with 98 additions and 13 deletions

View File

@@ -507,7 +507,7 @@ chained_assignments: {
expect_stdout: "PASS"
}
folded_assignments: {
folded_assignments_1: {
options = {
evaluate: true,
join_vars: true,
@@ -527,6 +527,30 @@ folded_assignments: {
expect_stdout: "PASS 42"
}
folded_assignments_2: {
options = {
evaluate: true,
join_vars: true,
}
input: {
"use strict";
var a = {};
a[42] = "FAIL";
a[a.PASS = 42] = "PASS";
console.log(a[42], a.PASS);
}
expect: {
"use strict";
var a = {
42: "FAIL",
PASS: 42,
};
a[42] = "PASS";
console.log(a[42], a.PASS);
}
expect_stdout: "PASS 42"
}
inlined_assignments: {
options = {
join_vars: true,
@@ -550,6 +574,7 @@ typescript_enum: {
rename = true
options = {
assignments: true,
collapse_vars: true,
evaluate: true,
hoist_props: true,
inline: true,