Skip to content

Commit

Permalink
Merge github.com:kako57/pycdc
Browse files Browse the repository at this point in the history
  • Loading branch information
zrax committed Feb 15, 2024
2 parents 2da061f + a04b6c0 commit 787090e
Showing 1 changed file with 12 additions and 2 deletions.
14 changes: 12 additions & 2 deletions ASTree.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2504,8 +2504,18 @@ static int cmp_prec(PycRef<ASTNode> parent, PycRef<ASTNode> child)
return 1; // Always parenthesize not(x)
if (child.type() == ASTNode::NODE_BINARY) {
PycRef<ASTBinary> binChild = child.cast<ASTBinary>();
if (parent.type() == ASTNode::NODE_BINARY)
return binChild->op() - parent.cast<ASTBinary>()->op();
if (parent.type() == ASTNode::NODE_BINARY) {
PycRef<ASTBinary> binParent = parent.cast<ASTBinary>();
if (binParent->right() == child) {
if (binParent->op() == ASTBinary::BIN_SUBTRACT &&
binChild->op() == ASTBinary::BIN_ADD)
return 1;
else if (binParent->op() == ASTBinary::BIN_DIVIDE &&
binChild->op() == ASTBinary::BIN_MULTIPLY)
return 1;
}
return binChild->op() - binParent->op();
}
else if (parent.type() == ASTNode::NODE_COMPARE)
return (binChild->op() == ASTBinary::BIN_LOG_AND ||
binChild->op() == ASTBinary::BIN_LOG_OR) ? 1 : -1;
Expand Down

0 comments on commit 787090e

Please sign in to comment.