On 09/07/24 11:24 AM, Andrey Tarasevich wrote:
Clang issues an error: it complains about the call being ambiguous. I.e.
the error is issued at the point of the call.
MSVC++ issues an error for `using X::N;` at the point of
using-declaration: it basically says that `N` already exists in this
scope. But if we switch to `using namespace X;` version, MSVC++ will
exhibit Clang-like behavior: complain about ambiguity at the point of
the call.
More precisely, it is not the call that's ambiguous. These compilers do
not even get to the call itself. They complain about the ambiguity of
`N` and just stop there. Which means that trying to "resolve" this
ambiguity by renaming one of the functions is not going to make any
difference.
GCC also "resolves" at the `N` stage. It just ignores the class entirely.
--
Best regards,
Andrey
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)