Я бы хотел, чтобы GCC выдавал предупреждение, которое VisualStudio выдает, когда находит имя, которое было объявлено как с class
, так и с struct
.(Предупреждение 4099) Обычно это происходит из-за предварительных объявлений, таких как:
struct Base;
...
class Base { ... };
VS на самом деле не удается связать в этом случае, поэтому я повысил предупреждение до ошибки.Поскольку этот проект является кроссплатформенным, я хотел бы также обнаружить эту проблему при компиляции с GCC - в противном случае я могу случайно проверить код, который не будет работать в VS.
Есть ли какой-либо переключатель или метод,чтобы заставить GCC также отклонить или предупредить о таких несоответствиях объявления класса / структуры?
ПРИМЕЧАНИЕ: Из комментариев неясно, является ли это предупреждение допустимым.На мой вопрос это не актуально, так как это условие вызывает сбой связывания в VisualStudio (я не могу просто проигнорировать предупреждение).Поэтому я просто хотел бы определить проблемы с помощью GCC, чтобы мои компиляции Windows не перестали работать внезапно.
ОТВЕТ: Похоже, решения не найдено.