spaceship-rewrite2.C
212 Bytes
-
Consider parm types equivalence for operator rewrite tiebreaker. · 8d5d9087
The C++ committee continues to discuss how best to avoid breaking existing code with the new rules for reversed operators. A recent suggestion was to base the tie-breaker on the parameter types of the candidates, which made a lot of sense to me, so this patch implements that. This patch also mentions that a candidate was reversed or rewritten when printing the list of candidates, and warns about a comparison that becomes recursive under the new rules. There is no flag for this warning; people can silence it by swapping the operands. * call.c (same_fn_or_template): Change to cand_parms_match. (joust): Adjust. (print_z_candidate): Mark rewritten/reversed candidates. (build_new_op_1): Warn about recursive call with reversed arguments. From-SVN: r278465
Jason Merrill committed