From fc9804b90955d3b38ac6e6c903a8c0e3f7945913 Mon Sep 17 00:00:00 2001 From: kzc Date: Sun, 2 Oct 2016 10:46:09 -0400 Subject: Fix (typeof side_effect()) in boolean context Fixes #1289 with suggestion by @rvanvelzen --- test/compress/typeof.js | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'test') diff --git a/test/compress/typeof.js b/test/compress/typeof.js index cefdd43c..fb391573 100644 --- a/test/compress/typeof.js +++ b/test/compress/typeof.js @@ -23,3 +23,25 @@ typeof_evaluation: { h='undefined'; } } + +typeof_in_boolean_context: { + options = { + booleans : true, + evaluate : true, + conditionals : true, + }; + input: { + function f1(x) { return typeof x ? "yes" : "no"; } + function f2() { return typeof g()? "Yes" : "No"; } + typeof 0 ? foo() : bar(); + !typeof console.log(1); + var a = !typeof console.log(2); + } + expect: { + function f1(x) { return "yes"; } + function f2() { return g(), "Yes"; } + foo(); + !(console.log(1), !0); + var a = !(console.log(2), !0); + } +} -- cgit v1.2.3