https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65299
--- Comment #4 from Im ieee <ieee at bk dot ru> --- (In reply to Jonathan Wakely from comment #3) > My initial reaction is that GCC and ICC/EDG are correct. Name lookup is > performed for "operator++" and if a name is found in two different base > classes the result is ambiguous. The different argument lists are not > considered until after name lookup. Isn't the int parameter a special case, because it is used to differentiate between prefix and postfix increment operators? And there is no other difference between their declarations.