Skip to content

Commit

Permalink
fix unnecessary parentheses for binary operators and add regression test
Browse files Browse the repository at this point in the history
  • Loading branch information
michaelficarra committed Feb 6, 2020
1 parent 86d0006 commit 90f59c2
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 1 deletion.
2 changes: 1 addition & 1 deletion escodegen.js
Original file line number Diff line number Diff line change
Expand Up @@ -1835,7 +1835,7 @@
BinaryExpression: function (expr, precedence, flags) {
var result, leftPrecedence, rightPrecedence, currentPrecedence, fragment, leftSource;
currentPrecedence = BinaryPrecedence[expr.operator];
leftPrecedence = expr.operator === '**' ? Precedence.Postfix : currentPrecedence + 1;
leftPrecedence = expr.operator === '**' ? Precedence.Postfix : currentPrecedence;
rightPrecedence = expr.operator === '**' ? currentPrecedence : currentPrecedence + 1;

if (currentPrecedence < precedence) {
Expand Down
4 changes: 4 additions & 0 deletions test/compare/binary-precedence.expected.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
a + b + c;
a + (b + c);
a + b * c;
a * b + c;
4 changes: 4 additions & 0 deletions test/compare/binary-precedence.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
(a + b) + c;
a + (b + c);
a + b * c;
a * b + c;

0 comments on commit 90f59c2

Please sign in to comment.