https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119859
Patrick Palka <ppalka at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jason at gcc dot gnu.org, | |ppalka at gcc dot gnu.org --- Comment #1 from Patrick Palka <ppalka at gcc dot gnu.org> --- This was changed by r15-3740 which corrected our CWG 2273 implementation to apply the inherited-ness tiebreaker only to constructors rather than to all member functions, and as you point out the candidates effectively only differ in their return type wrt overload resolution, so rejecting this example as ambiguous seems right to me. It's interesting however that although GCC and Clang now agree on the using1.C/using5.C testcases changed in r15-3740, here Clang disagrees and chooses the non-inherited function, but I don't see a justification for that. Jason, what do you think?