*** fold-const.c.old Thu Sep 8 19:10:50 2005 --- fold-const.c.new Thu Sep 8 19:10:34 2005 *************** fold_widened_comparison (enum tree_code *** 6101,6108 **** return NULL_TREE; arg1_unw = get_unwidened (arg1, shorter_type); - if (!arg1_unw) - return NULL_TREE; /* If possible, express the comparison in the shorter mode. */ if ((code == EQ_EXPR || code == NE_EXPR --- 6101,6106 ---- *************** fold_widened_comparison (enum tree_code *** 6114,6120 **** return fold (build (code, type, arg0_unw, fold_convert (shorter_type, arg1_unw))); ! if (TREE_CODE (arg1_unw) != INTEGER_CST) return NULL_TREE; /* If we are comparing with the integer that does not fit into the range --- 6112,6118 ---- return fold (build (code, type, arg0_unw, fold_convert (shorter_type, arg1_unw))); ! if (arg1_unw == arg1 || TREE_CODE (arg1_unw) != INTEGER_CST) return NULL_TREE; /* If we are comparing with the integer that does not fit into the range