diff --git a/src/ExprNode.cc b/src/ExprNode.cc index 427d0a9e7c8e587ff4258a371776bea13b4201a7..e22885186d9d6f620f317ab282936d2dbdecc4eb 100644 --- a/src/ExprNode.cc +++ b/src/ExprNode.cc @@ -5949,10 +5949,12 @@ void BinaryOpNode::findConstantEquations(map<VariableNode *, NumConstNode *> &table) const { if (op_code == BinaryOpcode::equal) - if (dynamic_cast<VariableNode *>(arg1) && dynamic_cast<NumConstNode *>(arg2)) - table[dynamic_cast<VariableNode *>(arg1)] = dynamic_cast<NumConstNode *>(arg2); - else if (dynamic_cast<VariableNode *>(arg2) && dynamic_cast<NumConstNode *>(arg1)) - table[dynamic_cast<VariableNode *>(arg2)] = dynamic_cast<NumConstNode *>(arg1); + { + if (dynamic_cast<VariableNode *>(arg1) && dynamic_cast<NumConstNode *>(arg2)) + table[dynamic_cast<VariableNode *>(arg1)] = dynamic_cast<NumConstNode *>(arg2); + else if (dynamic_cast<VariableNode *>(arg2) && dynamic_cast<NumConstNode *>(arg1)) + table[dynamic_cast<VariableNode *>(arg2)] = dynamic_cast<NumConstNode *>(arg1); + } else { arg1->findConstantEquations(table);