Skip to content

ufuzz failure #5779

Closed
Closed
@alexlamsl

Description

@alexlamsl
// original code
// (beautified)
var _calls_ = 10, a = 100, b = 10, c = 0;

const arguments_2 = b = a;

{
    var brake1 = 5;
    do {
        --b + -delete (~true == (arguments_2 && (arguments_2.next |= 4 / "undefined")));
    } while (--b + (arguments_2 && arguments_2.next) && --brake1 > 0);
}

console.log(null, a, b, c, Infinity, NaN, undefined);
// uglified code
// (beautified)
for (var n = 10, o = (n = 100, 5); --n, --n + (100..next |= NaN) && 0 < --o; ) {}

console.log(null, 100, n, 0, Infinity, NaN, void 0);
original result:
null 100 98 0 Infinity NaN undefined

uglified result:
null 100 90 0 Infinity NaN undefined
// reduced test case (output will differ)

// (beautified)
var a = 100, b;

const arguments_2 = b = a;

do {
    arguments_2 && (arguments_2.next |= 0);
} while (--b + (arguments_2 && arguments_2.next));

console.log(b);
// output: 99
// 
// minify: 0
// 
// options: {
//   "compress": {
//     "hoist_vars": true,
//     "keep_infinity": true,
//     "passes": 1000000,
//     "unsafe": true
//   },
//   "keep_fargs": true,
//   "keep_fnames": true,
//   "module": false,
//   "toplevel": true,
//   "output": {
//     "v8": true
//   },
//   "validate": true
// }
minify(options):
{
  "compress": {
    "hoist_vars": true,
    "keep_infinity": true,
    "passes": 1000000,
    "unsafe": true
  },
  "keep_fargs": true,
  "keep_fnames": true,
  "module": false,
  "toplevel": true,
  "output": {
    "v8": true
  }
}

Suspicious compress options:
  collapse_vars
  evaluate
  loops
  passes
  pure_getters
  reduce_vars
  side_effects
  unused

Suspicious options:
  rename
  toplevel

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions