From 29a71d3aae24e12bbdf5d9a99c8423b482de3e40 Mon Sep 17 00:00:00 2001 From: "Alex Lam S.L" Date: Wed, 21 Feb 2018 04:19:42 +0800 Subject: [PATCH] more tests for #2938 (#2940) --- test/compress/pure_getters.js | 58 +++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/test/compress/pure_getters.js b/test/compress/pure_getters.js index 82229d4b..e2662868 100644 --- a/test/compress/pure_getters.js +++ b/test/compress/pure_getters.js @@ -772,3 +772,61 @@ issue_2938_2: { } expect_stdout: "PASS" } + +issue_2938_3: { + options = { + pure_getters: true, + side_effects: true, + unused: true, + } + input: { + function f(a) { + var unused = a.a; + a.b = "PASS"; + a.c; + } + var o = {}; + o.d; + f(o); + console.log(o.b); + } + expect: { + function f(a) { + a.b = "PASS"; + } + var o = {}; + f(o); + console.log(o.b); + } + expect_stdout: "PASS" +} + +issue_2938_4: { + options = { + pure_getters: true, + side_effects: true, + toplevel: true, + unused: true, + } + input: { + var Parser = function Parser() {}; + var p = Parser.prototype; + var unused = p.x; + p.initialContext = function initialContext() { + p.y; + console.log("PASS"); + }; + p.braceIsBlock = function() {}; + (new Parser).initialContext(); + } + expect: { + var Parser = function() {}; + var p = Parser.prototype; + p.initialContext = function() { + console.log("PASS"); + }; + p.braceIsBlock = function() {}; + (new Parser).initialContext(); + } + expect_stdout: "PASS" +} -- 2.34.1