From 2088e1c19d97955b5582e08396fca8c7b7dadd83 Mon Sep 17 00:00:00 2001 From: "Alex Lam S.L" Date: Fri, 9 Feb 2018 06:54:37 +0800 Subject: fix AST corruption due to `collapse_vars` & `inline` (#2899) fixes #2898 --- test/compress/functions.js | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'test') diff --git a/test/compress/functions.js b/test/compress/functions.js index 87328820..a964f104 100644 --- a/test/compress/functions.js +++ b/test/compress/functions.js @@ -1989,3 +1989,33 @@ issue_2783: { } expect_stdout: "PASS" } + +issue_2898: { + options = { + collapse_vars: true, + inline: true, + reduce_vars: true, + sequences: true, + unused: true, + } + input: { + var c = 0; + (function() { + while (f()); + function f() { + var b = (c = 1 + c, void (c = 1 + c)); + b && b[0]; + } + })(); + console.log(c); + } + expect: { + var c = 0; + (function() { + while (b = void 0, void ((b = void (c = 1 + (c = 1 + c))) && b[0])); + var b; + })(), + console.log(c); + } + expect_stdout: "2" +} -- cgit v1.2.3