https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93483
--- Comment #27 from Mikael Morin <mikael at gcc dot gnu.org> --- (In reply to anlauf from comment #25) > (In reply to Mikael Morin from comment #24) > > First, the ARITH_INVALID_TYPE should be renamed as it has now a broader > > usage (ARITH_OP_NOT_LITERAL_VALUE is a bit long, ARITH_OP_NOT_CONSTANT is a > > bit misleading, ARITH_OP_NOT_SIMPLIFIED not great either, any other idea?). > > I think we should keep the enum ARITH_INVALID_TYPE for those cases where it > is appropriate, Are there such cases remaining? It seems that that value can't be returned any more. > I was contemplating either ARITH_NOT_REDUCED or > ARITH_CANNOT_REDUCE, > and opted for the latter. > I have a slight preference for the former but let's go with the latter if you prefer. But please add a comment describing it in the definition. Most enum values have an obvious meaning there, this one less so. > > Second, I'm wondering whether the check in reduce_binary_aa shouldn't be > > moved to reduce binary where it would be more clear. > > I agree that it is preferable to have checks already in reduce_binary, see > updated patch. After this one could remove the check from reduce_binary_aa, > as it would be redundant. > And there is a redundant check in reduce_unary as well.