C++ Псевдоним типа с тем же именемC++

Программы на C++. Форум разработчиков
Anonymous
C++ Псевдоним типа с тем же именем

Сообщение Anonymous »

Рассмотрим следующий код:

Код: Выделить всё

class A {};

class B {
using A = A;
};
С Clang и ICC компилируется нормально, а GCC завершается с ошибкой со следующим сообщением:

Код: Выделить всё

error: declaration of ‘using A = class A’ changes meaning of ‘A’ [-fpermissive]
4 |   using A = A;
|         ^
Вопрос: какой компилятор правильный и почему?

Подробнее здесь: https://stackoverflow.com/questions/664 ... -same-name

Вернуться в «C++»