diff options
author | Alex Lam S.L <alexlamsl@gmail.com> | 2021-05-19 22:11:39 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-20 05:11:39 +0800 |
commit | d6152e6a76908223cace651898e12a3b3c9a445d (patch) | |
tree | e208e034823e2fb26aada3949db6a3cd321c88dd /test | |
parent | d930c705f6064448c7e6cba8e0e9e8d46d5e3762 (diff) | |
download | tracifyjs-d6152e6a76908223cace651898e12a3b3c9a445d.tar.gz tracifyjs-d6152e6a76908223cace651898e12a3b3c9a445d.zip |
fix corner case in `collapse_vars` (#4946)
Diffstat (limited to 'test')
-rw-r--r-- | test/compress/collapse_vars.js | 34 | ||||
-rw-r--r-- | test/reduce.js | 2 |
2 files changed, 35 insertions, 1 deletions
diff --git a/test/compress/collapse_vars.js b/test/compress/collapse_vars.js index 83eccdf1..d2f27299 100644 --- a/test/compress/collapse_vars.js +++ b/test/compress/collapse_vars.js @@ -9245,3 +9245,37 @@ issue_4935: { } expect_stdout: "1 0" } + +inline_throw: { + options = { + collapse_vars: true, + inline: true, + keep_fargs: false, + unused: true, + } + input: { + try { + (function() { + return function(a) { + return function(b) { + throw b; + }(a); + }; + })()("PASS"); + } catch (e) { + console.log(e); + } + } + expect: { + try { + (function(a) { + return function() { + throw a; + }(); + })("PASS"); + } catch (e) { + console.log(e); + } + } + expect_stdout: "PASS" +} diff --git a/test/reduce.js b/test/reduce.js index 3f154fa7..15f869e5 100644 --- a/test/reduce.js +++ b/test/reduce.js @@ -46,7 +46,7 @@ module.exports = function reduce_test(testcase, minify_options, reduce_options) if (verbose) { log("// Node.js " + process.version + " on " + os.platform() + " " + os.arch()); } - if (differs.error && [ "DefaultsError", "SyntaxError" ].indexOf(differs.error.name) < 0) { + if (differs && differs.error && [ "DefaultsError", "SyntaxError" ].indexOf(differs.error.name) < 0) { test_for_diff = test_minify; differs = test_for_diff(testcase, minify_options, result_cache, max_timeout); } |