{"push_id":1018235182,"size":1,"distinct_size":1,"ref":"refs/heads/fold","head":"61cba8fdfe136778789644d6d594a61271279fc3","before":"7fd9e5377f1ea22a6f479d6411e5cd0df3ae58d8","commits":[{"sha":"61cba8fdfe136778789644d6d594a61271279fc3","author":{"email":"e690c388aec5b811038fa4c17268e9b7582a1bee@gmail.com","name":"Michael Zhou"},"message":"Rewrite the logic for folding comparisons in PeepholeFoldConstants\n\nevaluateComparison() is now based on the three Abstract Operations\ndefined in the ES6 Specs: Abstract Relational Comparison [1],\nAbstract Equality Comparison [2] and Strict Equality Comparison [3].\n\nThis fixes a handful of foldable cases that were not folded previously:\n\nCases like `0 < null` and `'hi' < null` are now folded.\n\nString-string comparisons and string-number comparisions\nlike `'a' < 'b'` and `1 < '2'` are now folded.\n\nCases involving NaN are now folded.\n\nAs a bonus, a test case in testOptimizeSwitch() in\nPeepholeRemoveDeadCodeTest now folds.\n\n[1] http://www.ecma-international.org/ecma-262/6.0/#sec-abstract-relational-comparison\n[2] http://www.ecma-international.org/ecma-262/6.0/#sec-abstract-equality-comparison\n[3] http://www.ecma-international.org/ecma-262/6.0/#sec-strict-equality-comparison","distinct":true,"url":"https://api.github.com/repos/Dominator008/closure-compiler/commits/61cba8fdfe136778789644d6d594a61271279fc3"}]}