We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
// original code // (beautified) var _calls_ = 10, a = 100, b = 10, c = 0; export function f0() { function f1() { { var expr9 = a++ + { var: --b + +b, foo: a++ + +b, next: (c = c + 1) + +(((c = c + 1, Infinity) | -0 * "c") ^ ("a" ^ /[a2][^e]+$/) === "function" - []) }; for (var key9 in expr9) { switch (typeof arguments_1 == "object") { case typeof (--b + ~((key9 && (key9[(c = 1 + c, ({} > true !== (key9 && (key9[c = 1 + c, ("" && [ , 0 ][1]) / (-5 & 25) != (key9 += ("" >>> []) / ("object" >= 0))] = "b" & 3))) <= ("number" != "bar") % ({} >= -3)) ? (c = 1 + c, (c = c + 1, "b") >= "c" >> ([ , 0 ].length === 2) > (22 << "" < (22 != 1))) : (c = 1 + c, -(("undefined" || 22) >= (this, -4)))] = (3 - 22) % (-5 && "object"))) % (1 > -4 & (22 & 3)))): { var expr11 = (c = 1 + c, (/[a2][^e]+$/ >>> -1 && "bar" > 38..toString()) == ("a" != /[a2][^e]+$/) <= (5 <= {})); for (var key11 in expr11) { c = 1 + c, ("c", 25) ^ "number" !== -2 | (key9 %= {} + 38..toString()) < (true & 0); } } ; break; case a++ + b--: try { c = 1 + c, (key9 && (key9[c = 1 + c, 5 << [ , 0 ][1] && [ , 0 ][1] & "a" && "number" == ([ , 0 ].length === 2) == {} > 25] += 23..toString() & null) || 38..toString() && "c") == (key9 && (key9.Infinity = ([ , 0 ].length === 2) >>> Infinity != -2 % "")); } finally { } break; case (c = c + 1) + (--b + (typeof f2 == "function" && --_calls_ >= 0 && f2()) ? key9 && typeof key9.Infinity == "function" && --_calls_ >= 0 && (c = 1 + c, [ , 0 ][1] / 5 << (24..toString() ^ "a") && (key9 && (key9.a += [] >> false)) != (2 != 3), key9.Infinity)((c = 1 + c, key9 && (key9.done %= (-1 == {}) % (25 & [ , 0 ][1]) % ((true || 24..toString()) ^ 4 << false))), [ , 0 ][1], -2) : (c = c + 1) + void function() { }()): break; case { async: (c = 1 + c, ((2, this) ^ ("number" | 5)) >>> (-2 + -2 || 5 >= NaN)), 0: (c = 1 + c, ((c = c + 1, -0) >>> 1 + "object") - (this >> [] ^ "undefined" >= "")), [(c = 1 + c, ("bar" || "b") / (undefined >= -4) ^ ~true + ("c" << undefined))]: (c = 1 + c, (38..toString() >>> 5 !== (key9 /= "" && false)) % ((c = c + 1, this) % (22 >= [ , 0 ][1]))), set: (c = 1 + c, 22 - 23..toString() === /[a2][^e]+$/ >= "number" ^ (key9 && (key9.done = -0 >> [] <= (38..toString(), 4)))), value: (c = 1 + c, ("" < "a") * ("function" && 1) >= (24..toString() && 22) * (key9 && (key9.Infinity = [ , 0 ][1] | {}))) }: { } if (c = 1 + c, c = c + 1, "number" % 25 & {} >> -3) { c = 1 + c, (this == -2 ^ Infinity >>> 25) - ((key9 += "b" != null) ^ "" / /[a2][^e]+$/); } break; } } } L12692: for (var brake19 = 5; [].set && brake19 > 0; --brake19) { if (--b + /[abc4]/.test((--b + (a && typeof a.in == "function" && --_calls_ >= 0 && a.in()) || b || 5).toString())) { try { switch (c = 1 + c, ({} != -1) / (-1 << 5) ^ this << "b" >> (NaN ^ -4)) { case c = 1 + c, ("bar" == -3) <= "a" * "" < (undefined >>> "b" ^ (38..toString() ^ Infinity)): ; break; default: ; case c = 1 + c, (a && (a[(c = c + 1) + [ (c = 1 + c, ("bar" >= -1) + (undefined << [ , 0 ][1]) === (-1 | 0) >> (a && (a.value = "" || Infinity))) ].foo] += "number" % null % ("bar" != [ , 0 ][1]))) >> ((4 == -4) >>> ("foo" >= 23..toString())): ; break; case c = 1 + c, (this > null | 38..toString() + -2) > (-5 != "b") % ("function" & 1): ; break; } } finally { c = 1 + c, ("number" >> ([ , 0 ].length === 2) | Infinity != true) % ((0 - NaN) / ("object" < NaN)); c = 1 + c, (25 & {} ^ ("function" ^ -2)) >>> ("bar" - 1) % ("object", -5); } } } } var bar = f1("b", !function NaN_2() { { var brake25 = 5; do { { var brake26 = 5; L12693: while ((c = 1 + c, (/[a2][^e]+$/ > -0 && "c" <= null) | (false < "a") >> (undefined || undefined)) && --brake26 > 0) { c = 1 + c, ("c" + 38..toString()) * (-5 / -3) / (void -3 ^ (bar %= 1 || 4)); } } } while (--b + [].value && --brake25 > 0); } switch (0 === 1 ? a : b) { case /[abc4]/.test(((c = 1 + c, (24..toString() == 2) << (Infinity != this) && (-5 && -4) / ("b" << 0)) || b || 5).toString()): c = 1 + c, ((bar &= "c" >= 24..toString()) > (undefined || 22)) % ((25 | "foo") & (24..toString() & -0)); case a++ + ((c = 1 + c, bar = -3 >>> false == +[] == (/[a2][^e]+$/ === 25 ^ false == "undefined")) ? (c = 1 + c, (-4 | null) >> (2 << 4) >= (false > -4 && 24..toString() >>> "a")) : (c = 1 + c, bar && (bar[{}[(c = 1 + c, (bar += (bar >>>= ("foo", -3)) >= this * this) || 4 >>> -2 >> (false == 4)) ? (c = 1 + c, [] >> {} !== (25 & false) ^ ([ , 0 ].length === 2) > "bar" <= (-0 || 25)) : (c = 1 + c, "bar" / /[a2][^e]+$/ >> (NaN_2 && (NaN_2[c = 1 + c, (bar /= "object" & "") >>> (c = c + 1, Infinity) ^ ("c" < 2) - (undefined + 4)] = -2 ^ 22)) >> (22 >= "b" >= (NaN_2 && (NaN_2[c = 1 + c, (NaN_2 && (NaN_2[c = 1 + c, (Infinity ^ 23..toString()) + (24..toString() << "object"), false >>> 4 ^ this >> -0] &= 4 | "b")) <= (23..toString() >= "undefined") & "foo" < "a" == 24..toString() > {}] = Infinity || "undefined"))))]] %= +(-1 + -2) + (([ , 0 ].length === 2 || -0) ^ this <= -2)))): c = 1 + c, bar -= -1 >>> "c" | 5 >> "a" | (4 >= "c", -4 >> true); break; case NaN_2 && typeof NaN_2.in == "function" && --_calls_ >= 0 && NaN_2.in((c = 1 + c, (25 < "bar") >> ({} < 1) >= (-0 !== "c") + ("undefined" === "function"))): break; case 1 === 1 ? a : b: c = 1 + c, bar && ({ 0: bar.undefined } = { 0: {} & NaN & (/[a2][^e]+$/ || 24..toString()) ^ (bar += 25 - "b" && (bar = -2 == 5)) }); break; } }(), 0); function f2(b_1, arguments_1) { try { { var brake34 = 5; do { switch ((c = 1 + c, null - "number" == "number" >= ([ , 0 ].length === 2) && (true >> "function" || "object" > 25)) ? (c = 1 + c, b_1 += (4 + {} <= (23..toString() | 1)) + (-1 > "") / void 1) : (c = 1 + c, "object" >> [ , 0 ][1] == -3 % false, ("" > false) / (undefined >> -3))) { default: c = 1 + c, (23..toString() >>> -3 ^ (arguments_1 += "function" * "a")) > (Infinity, "b") % delete false; case --b + arguments_1: c = 1 + c, (-3 !== undefined) > null >>> Infinity ^ (1 >= this) >>> undefined / 0; c = 1 + c, +"b" % delete "a" < ([ , 0 ][1] * [] ^ NaN >> ([ , 0 ].length === 2)); break; case (c = c + 1) + (this in { [(c = 1 + c, (bar && (bar[{} in { a: (c = 1 + c, (c = c + 1, -5) + ("object" | true) | (c = c + 1, "" >> /[a2][^e]+$/)), next: (c = 1 + c, (bar && (bar[(c = c + 1) + true] = "object" <= 4 != (3 === this))) ^ ((b_1 && (b_1.c /= NaN >>> 24..toString())) ^ (b_1 && (b_1[c = 1 + c, ([] ^ 2 | "undefined" >>> "foo") & ("foo" - /[a2][^e]+$/) % (false > 3)] += "object" >>> [ , 0 ][1])))), c: (c = 1 + c, (undefined << "b" > ([ , 0 ].length === 2 ^ Infinity)) % ((b_1 && ([ b_1.Infinity ] = [ "foo" != "function" ])) - (1 > []))), undefined: (c = 1 + c, bar && (bar[{ ...(c = 1 + c, null * /[a2][^e]+$/ & (bar && (bar.undefined = false & "undefined")) ^ ([ , 0 ][1] < this | 1 <= 3)), value: (c = 1 + c, (0 != -0) >> (c = c + 1, "bar") != (null != "b" || (24..toString(), NaN))), value: (c = 1 + c, (b_1 && (b_1.set += ("b" > 23..toString()) << (22 && 1))) ^ (-3 >= "undefined") >>> ("c" ^ -5)) }] = (bar += (22 || Infinity) != {} > 0) / ((1 || 3) / (-1 > 0)))), static: (c = 1 + c, (-3 >= 24..toString() < (22 != "")) * ((/[a2][^e]+$/ !== "function") - (null && -0))) }] = (arguments_1 += /[a2][^e]+$/ >> undefined) || 4 >>> 23..toString())) >= (c = c + 1, this >= 23..toString()))]: (c = 1 + c, +(bar && (bar.then = ([ , 0 ].length === 2) <= -4 && (/[a2][^e]+$/, -5)))) }): c = 1 + c, b_1 && (b_1[typeof arguments_1 == "function" && --_calls_ >= 0 && arguments_1()] += ("c" >= false | 24..toString() != "c") > (38..toString() >= 38..toString() ^ (-0, true))); c = 1 + c, (Infinity << "number" >> ("" <= 5)) + (25 > {} != "function" + 23..toString()); case a++ + [ (c = 1 + c, (/[a2][^e]+$/ >= "number" != [ , 0 ][1] > 22) > (c = c + 1, arguments_1 *= "a" * true)), (c = 1 + c, "foo" % [ , 0 ][1] < delete NaN >= (c = c + 1, 25 ^ undefined)) ].foo: break; } } while (a++ + (b = a) && --brake34 > 0); } } catch (undefined_2) { if ((c = c + 1) + ((c = 1 + c, ((arguments_1 && (arguments_1[c = 1 + c, "undefined" >= 1 != "bar" % "object" & (38..toString(), undefined) + ("" & undefined)] = ("a", 38..toString()))) < -5 * 4) % ((arguments_1 && (arguments_1.then = "" !== NaN)) === "c" >= undefined)) || 7).toString()[c = 1 + c, bar && ([ bar.static ] = [ /[a2][^e]+$/ === "number" & (undefined_2 && (undefined_2.NaN = 23..toString() > -3)) ]) || bar && (bar[(c = c + 1) + b++] = ([ , 0 ].length === 2 ^ "c") > (25 < NaN))]) { try { c = 1 + c, bar && (bar.in = (null != "function" && 5 != -3) & (b_1 && (b_1.set += -3 * true ^ 0 == -2))); } catch (b) { } finally { } } { var yield_1 = function f3(a, undefined_2_1, a) { }(NaN, (c = 1 + c, (c = c + 1, 38..toString() ^ 5) % ("b" < 2 ^ this <= "object")), (c = 1 + c, NaN << -2 >> 38..toString() % undefined || void ("a" != 2))); } } finally { L12694: for (var brake45 = 5; b_1 && typeof b_1.static == "function" && --_calls_ >= 0 && (c = 1 + c, (3 << /[a2][^e]+$/) + (c = c + 1, this) > ("number" >> this <= (25 !== 22)), b_1.static)() && brake45 > 0; --brake45) { L12695: for (var brake46 = 5; (c = 1 + c, (b_1 >>>= Infinity % -2 == ([ , 0 ].length === 2 == "")) + (bar && (bar[function() { }] ^= undefined / 5 > (/[a2][^e]+$/ !== "function")))) && brake46 > 0; --brake46) { c = 1 + c, void (22 / 22) - (false % undefined != (1 & {})); } } c = c + 1; } } var yield_1 = f2(); function f4() { { var brake49 = 5; do { var bar_1; } while (function bar_1_1() { { var expr51 = (c = 1 + c, ("object" && "b") > (24..toString() ^ 4) != (bar_1 && (bar_1.Infinity += -0 != -1)) > ("number" < "foo")); for (bar_1 in expr51) { c = 1 + c, (c = c + 1, undefined | -0) ^ ({} <= ([ , 0 ].length === 2)) * (NaN !== /[a2][^e]+$/); } } }() && --brake49 > 0); } c = c + 1; } var b_1 = f4(-4, -1); } var Infinity = f0({ b: 1 in {}, [(c = c + 1) + (typeof f2 == "function" && --_calls_ >= 0 && f2(..."" + a, 38..toString()))]: [ --b + +b, a && a[1 === 1 ? a : b], --b + a ], next: (c = c + 1) + (a++ + [ a++ + /[abc4]/.test(((c = c + 1) + new function Infinity_1(b_1, foo_1) { this[typeof f1 == "function" && --_calls_ >= 0 && f1(NaN, -2)] %= ((c = c + 1, NaN) << ("a" || {}) || (c = c + 1, [ , 0 ][1] ^ undefined)) * (("object" != 38..toString()) >= null >> "" !== (-2 === 5) / +[ , 0 ][1]); this[(c = c + 1) + (typeof f1 == "function" && --_calls_ >= 0 && f1(((c = 1 + c, c = c + 1, 4 | 4 || Infinity_1 && (Infinity_1.null <<= 0 << -4)) || 4).toString()[c = 1 + c, (-4 ^ -1) != ([] && 23..toString()) ^ "foo" + -4 == "undefined" >>> "number"], []))] &= ("b" % 38..toString() < (38..toString() != "b")) / ("c" < 0 !== (Infinity || "a")) === ((5 < 25 ^ (Infinity_1 && (Infinity_1[c = 1 + c, ("bar" && "a") * (1 & "function") - (0 << "undefined" <= {} % 1)] = -1 >> -2))) & (Infinity - "number" || this == "undefined")); this[{ null: --b + (b = a), var: (c = 1 + c, Infinity_1 && (Infinity_1.NaN += (foo_1 && (foo_1.a = "" << "number" < (1 || true))) ^ 38..toString() >> "bar" & -2 !== "c")), "-2": a++ + { undefined: (c = 1 + c, (b_1 = [] % false !== (-4 ^ "bar")) % (5 * 38..toString() % ("foo" / true))), get then() { c = 1 + c, (3 <= "a" ^ "" >> this) + (Infinity - true) / (-0 >= null); }, 1.5: (c = 1 + c, ([] < "number") >>> void -0 <= (24..toString() === ([ , 0 ].length === 2) === 22 <= -3)) } }] = (b_1 && (b_1.value += ((false | undefined) > ("bar" != 22)) * ((foo_1 += "c" << [ , 0 ][1]) <= (b_1 && (b_1.foo += (24..toString(), "number")))))) > ((5 !== "") >>> ("foo" ^ "c") ^ (foo_1 && (foo_1.next = 3 & 5)) == (-5 | -5)); for (var brake2 = 5; (c = c + 1) + -3 && brake2 > 0; --brake2) { var expr3 = (c = 1 + c, (-5 << 4 | "undefined" <= "function") === (-2 >> {} || (foo_1 = "number" & "undefined"))); L12690: for (var key3 in expr3) { c = 1 + c; var yield_2 = expr3[key3]; c = 1 + c, (/[a2][^e]+$/ || 25) >> (1 !== "") & (25 <= false) >>> (-2 < this); } } { var expr5 = b = a; for (var b_1 in expr5) { c = 1 + c; var yield = expr5[b_1]; { } } } }() || b || 5).toString()), (c = c + 1) + (typeof a == "function" && --_calls_ >= 0 && a(-0)), a && typeof a.static == "function" && --_calls_ >= 0 && a.static(null, --b + ((a && ([ a[--b + b--] ] = [ this % "undefined" ^ ({} ^ -3) ])) !== ((c = c + 1, -2) === 2 > [])), a++ + (0 === 1 ? a : b)), ...[ (false >>> undefined && (3 || "object")) == (-4 + [], "" / "c"), ++b, (c = c + 1) + void function() { { var expr7 = ((b_2, await_1) => (c = 1 + c, await_1 && (await_1.foo /= (4 & -3) + (-1 === 23..toString()) >> ((b_2 && ([ b_2[c = 1 + c, void true + (b_2 && (b_2.Infinity += "number" - Infinity)) >= (false * 25 < -2 >>> "bar")] ] = [ 0 >> 2 ])) === 1 + 1))))("a"); L12691: for (var key7 in expr7) { var c_1 = (c = 1 + c, ("" & 22) > (-0 < "undefined") & (true || 25) !== this >= "foo"), yield = (c = 1 + c, ("function" * -3 && "undefined" >>> "a") < ("foo" >> -1 < this + NaN)); } } }(), --b + ((a && (a.a = 4 <= -1 !== 25 + 2)) !== (22 << "a") - (undefined === 23..toString())) ] ].c || 5).toString()["foo"] }[--b + (a && typeof a.static == "function" && --_calls_ >= 0 && a.static())], 38..toString(), undefined); console.log(null, a, b, c, Infinity, NaN, undefined);
// uglified code // (beautified) var o, c = 10, N = 100, s = 10, u = 0; function f0() { var f; function f2(t, i) { var n, e, a; try { n = 5; do { switch (u = 1 + u, NaN == (2 === [ , 0 ].length) <= "number" ? (u = 1 + u, t += NaN) : (u = 1 + u, NaN)) { default: u = 1 + u, i += NaN; case --s + i: u = 1 + (u = 1 + u); break; case (u += 1) + (this in { [(u = 1 + u, (f && (f[{} in { a: (u = 1 + u, u += 1, -4), next: (u = 1 + (u += 1), (f && (f[(u += 1) + !0] = 0 != (3 === this))) ^ ((t && (t.c /= 0)) ^ (t && (t[u = 1 + u, 0] += 0)))), c: (u = 1 + u, ((2 === [ , 0 ].length ^ o) < 0) % ((t && ([ t.Infinity ] = [ !0 ])) - !0)), undefined: (u = 1 + u, f && (f[{ ...(u = 1 + u, NaN & (f && (f.undefined = 0)) ^ (0 < this | !0)), value: (u = 1 + u, !0), value: (u = 1 + (u += 1), 0 ^ (t && (t.set += 2))) }] = (f += !0) / (1 / !1))), static: (u = 1 + u, 1) }] = (i += 0) || 0)) >= ("23" <= this))]: (u = 1 + (u += 1), +(f && (f.then = (2 === [ , 0 ].length) <= -4 && -5))) }): u = 1 + u, t && (t["function" == typeof i && 0 <= --c && i()] += !0), u = 1 + u; case N++ + [ (u = 1 + u, (i *= NaN) < !1), (u = 1 + (u += 1), NaN < delete NaN >= (u += 1, 25)) ].foo: } } while (N++ + (s = N) && 0 < --n); } catch (n) { if ((u += 1) + (u = 1 + u, ("" + (((i && (i[u = 1 + u, 0] = "38")) < -20) % (!1 === (i && (i.then = !0))) || 7))[u = 1 + u, f ? ([ f.static ] = [ !1 & (n && (n.NaN = !0)) ]) : f && (f[(u += 1) + s++] = !1 < (2 === [ , 0 ].length ^ "c"))])) { try { u = 1 + u, f && (f.in = !0 & (t && (t.set += -3))); } catch (n) {} } u = 1 + u, u = 1 + (u += 1); } finally { for (e = 5; t && "function" == typeof t.static && 0 <= --c && (u = 1 + u, u += 1, t.static)() && 0 < e; --e) { for (a = 5; u = 1 + u, (t >>>= o % -2 == (2 === [ , 0 ].length == "")) + (f && (f[function() {}] ^= !1)) && 0 < a; --a) { u = 1 + u; } } u += 1; } } f = function f1() { var n, t, i; for (n in N++ + { var: --s + +s, foo: N++ + +s, next: (u += 1) + +(!1 ^ (NaN | (u += 1, o))) }) { switch ("object" == typeof arguments_1) { case typeof (--s + ~((n && (n[u = 1 + u, (!1 !== (n && (n[u = 1 + u, 0 != (n += NaN)] = 0))) <= NaN ? (u = 1 + u, u += 1, !1 < ("c" >> (2 === [ , 0 ].length) <= "b")) : (u = 1 + u, -0)] = NaN)) % 0)): for (t in u = 1 + u, !0) { u = 1 + u, n %= {} + "38"; } break; case N++ + s--: u = 1 + u, n && (n[u = 1 + u, 0] += 0), n && (n.Infinity = (2 === [ , 0 ].length) >>> o != NaN); break; case (u += 1) + (--s + (0 <= --c && f2()) ? n && "function" == typeof n.Infinity && 0 <= --c && (u = 1 + u, n.Infinity)((u = 1 + u, n && (n.done %= NaN)), 0, -2) : (u += 1) + void 0): break; case { async: (5 ^ this) >>> -4, 0: (u = 1 + (1 + u), 0 - (this >> [] ^ !0)), "-2": (u = 1 + (1 + (u + 1)), (1 != (n /= "")) % (this % !0)), set: (u = 1 + (u + 1), !1 ^ (n && (n.done = !0))), value: (u = 1 + u, 22 * (n && (n.Infinity = 0)) <= 1) }: u = 1 + u, u += 1; } } for (i = 5; [].set && 0 < i; --i) { if (--s + /[abc4]/.test((--s + (N && "function" == typeof N.in && 0 <= --c && N.in()) || s || 5).toString())) { try { switch (!0 / -32 ^ this << "b" >> -4) { case u = 1 + (u = 1 + u), !1 < (38 ^ o): break; default: case u = 1 + u, (N && (N[(u += 1) + [ (u = 1 + u, 0 == -1 >> (N && (N.value = o))) ].foo] += NaN)) >> 0: case u = 1 + u, NaN < (null < this | "38-2"): } } finally { u = 1 + (u = 1 + u); } } } }(function NaN_2() { for (var n = 5; u = 1 + u, --s + [].value && 0 < --n; ) {} switch (s) { case /[abc4]/.test((u = 1 + u, ((!1 << (o != this) ? -4 / 0 : s) || 5).toString())): u = 1 + u, f &= !0; case N++ + (u = 1 + (1 + u), !(f = !0)): u = 1 + u, f -= -1; break; case NaN_2 && "function" == typeof NaN_2.in && 0 <= --c && NaN_2.in((u = 1 + u, !1)): break; case N: u = 1 + u, f && ({ 0: f.undefined } = { 0: 0 ^ (f += NaN) }); } }()), f2(), function f4() { var n; (function bar_1_1() { for (n in u = 1 + u, 0 != !1 < (n && (n.Infinity += !0))) { u = 1 + u, u += 1; } })(), u += 1; }(); } o = f0((u += 1, "function" == typeof f2 && 0 <= --c && f2(..."" + N, "38"), --s, N && N[N], --s, u += 1, N++, N++, ((u += 1) + new function Infinity_1(n, t) { var i, e, a; for (this["function" == typeof f1 && 0 <= --c && f1(NaN, -2)] %= !0 * (u += 1, u += 1, 0), this[(u += 1) + ("function" == typeof f1 && 0 <= --c && f1("4"[u = 1 + ((u = 1 + u) + 1), 1], []))] &= !1 / (!1 !== (o || "a")) == ((!0 ^ (Infinity_1 && (Infinity_1[u = 1 + u, NaN] = -1))) & (o - "number" || "undefined" == this)), this[{ null: --s + (s = N), var: (u = 1 + u, Infinity_1 && (Infinity_1.NaN += 0 ^ (t && (t.a = !0)))), "-2": N++ + { undefined: (u = 1 + u, (n = !0) % NaN), get then() { u = 1 + u; }, 1.5: (u = 1 + u, 1 <= ("24" === (2 === [ , 0 ].length) == 0)) } }] = (n && (n.value += !1 * ((t += 0) <= (n && (n.foo += "number"))))) > (1 ^ -5 == (t && (t.next = 1))), i = 5; (u += 1) + -3 && 0 < i; --i) { for (e in u = 1 + u, !1) { u = 1 + (1 + u); } } for (n in a = s = N) { u = 1 + u, a[n]; } }() || s || 5).toString(), u += 1, "function" == typeof N && 0 <= --c && N(-0), N && "function" == typeof N.static && 0 <= --c && N.static(null, --s + ((N && ([ N[--s + s--] ] = [ this % "undefined" ^ -3 ])) !== (!0 === (u += 1, -2))), N++ + s), ++s, u += 1, function() { for (var n in u = 1 + u, "a") { u = 1 + (1 + u); } }(), --s, N && (N.a = !0), --s, N && "function" == typeof N.static && 0 <= --c && N.static())), console.log(null, N, s, u, o, NaN, void 0); export { f0 };
original result: null 234 234 1584 undefined NaN undefined uglified result: null 234 234 1586 undefined NaN undefined
// reduced test case (output will differ) // (beautified) var expr7 = ((b_2, await_1) => await_1 && await_1)("a"); for (var key7 in expr7) { 0(); } // output: // minify: TypeError: 0 is not a function // options: { // "compress": { // "hoist_vars": true, // "keep_infinity": true, // "passes": 1000000, // "unsafe": true // }, // "keep_fnames": true, // "toplevel": true, // "mangle": { // "v8": true // }, // "output": { // "v8": true // }, // "validate": true // }
minify(options): { "compress": { "hoist_vars": true, "keep_infinity": true, "passes": 1000000, "unsafe": true }, "keep_fnames": true, "toplevel": true, "mangle": { "v8": true }, "output": { "v8": true } } Suspicious compress options: evaluate hoist_vars keep_fargs reduce_vars unused Suspicious options: rename
The text was updated successfully, but these errors were encountered:
fix corner case in hoist_vars
hoist_vars
76db84e
fixes mishoo#4839
fix corner case in hoist_vars (#4840)
0df0281
fixes #4839
Successfully merging a pull request may close this issue.
The text was updated successfully, but these errors were encountered: