void ConstantConditionEliminator::visit(UnaryExpression &unary)
{
if(VariableReference *var = dynamic_cast<VariableReference *>(unary.expression.get()))
- if(unary.oper=="++" || unary.oper=="--")
+ if(unary.oper->token[1]=='+' || unary.oper->token[1]=='-')
variable_values.erase(var->declaration);
}
void UnusedVariableRemover::visit(UnaryExpression &unary)
{
TraversingVisitor::visit(unary);
- if(unary.oper=="++" || unary.oper=="--")
+ if(unary.oper->token[1]=='+' || unary.oper->token[1]=='-')
side_effects = true;
}
void UnusedVariableRemover::visit(BinaryExpression &binary)
{
- if(binary.oper=="[")
+ if(binary.oper->token[0]=='[')
{
if(assignment_target)
assign_to_subscript = true;