On 12/06/2012 02:24 AM, Jakub Jelinek wrote:
+ if (TREE_CODE (expr) == INTEGER_CST) + { + if (operand_equal_p (expr, boolean_true_node, 0)) + return noexcept_true_spec; + else if (operand_equal_p (expr, boolean_false_node, 0)) + return noexcept_false_spec; + }
These are the only two possibilities for a boolean INTEGER_CST, so let's assert that it's false if it isn't true.
You can then leave the 'else' on the "if (expr == error_mark_node)".
+ if (TREE_CODE (expr) == INTEGER_CST) + { + if (operand_equal_p (expr, boolean_true_node, 0) + || operand_equal_p (expr, boolean_false_node, 0)) + new_specs = expr; + }
And here you don't need to check the value at all unless in an assert. Jason