diff options
author | Alex Lam S.L <alexlamsl@gmail.com> | 2017-06-16 21:18:43 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-06-16 21:18:43 +0800 |
commit | 931daa85bf72f6799dca83c1e1ac9b339d85b70b (patch) | |
tree | 3c445bc48a85a8492a82cd246ebc81ada3331b6d /test | |
parent | 00e4f7b3c15437df90cf06dabb096fd0576e1814 (diff) | |
download | tracifyjs-931daa85bf72f6799dca83c1e1ac9b339d85b70b.tar.gz tracifyjs-931daa85bf72f6799dca83c1e1ac9b339d85b70b.zip |
fix loss of context in `collapse_vars` & `cascade` (#2112)
fixes #2110
Diffstat (limited to 'test')
-rw-r--r-- | test/compress/pure_getters.js | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/test/compress/pure_getters.js b/test/compress/pure_getters.js index 0ca6a804..81a96b73 100644 --- a/test/compress/pure_getters.js +++ b/test/compress/pure_getters.js @@ -178,3 +178,66 @@ impure_getter_2: { } expect: {} } + +issue_2110_1: { + options = { + cascade: true, + pure_getters: "strict", + sequences: true, + side_effects: true, + reduce_vars: true, + unused: true, + } + input: { + function f() { + function f() {} + function g() { + return this; + } + f.g = g; + return f.g(); + } + console.log(typeof f()); + } + expect: { + function f() { + function f() {} + return f.g = function() { + return this; + }, f.g(); + } + console.log(typeof f()); + } + expect_stdout: "function" +} + +issue_2110_2: { + options = { + collapse_vars: true, + pure_getters: "strict", + reduce_vars: true, + unused: true, + } + input: { + function f() { + function f() {} + function g() { + return this; + } + f.g = g; + return f.g(); + } + console.log(typeof f()); + } + expect: { + function f() { + function f() {} + f.g = function() { + return this; + }; + return f.g(); + } + console.log(typeof f()); + } + expect_stdout: "function" +} |