Подтвердить что ты не робот

Как отключить предупреждения #pragma?

При разработке приложения на С++ мне пришлось использовать стороннюю библиотеку, которая создавала огромное количество предупреждений, связанных с безвредной директивой #pragma.

../File.hpp:1: warning: ignoring #pragma ident
In file included from ../File2.hpp:47,
                 from ../File3.hpp:57,
                 from File4.h:49,

Можно ли отключить этот вид предупреждений при использовании компилятора GNU С++?

4b9b3361

Ответ 1

Возможно, посмотрите GCC Diagnostic Pragmas? В качестве альтернативы в этом случае вы можете использовать сочетание параметров, которые -Wall включает, исключая -Wunknown-pragmas.

Ответ 2

Я считаю, что вы можете скомпилировать

-Wno-unknown-pragmas

чтобы подавить их.

Ответ 3

В GCC скомпилируйте с -Wno-unknown-pragmas

В MS Visual Studio 2005 (этот вопрос не помечен gcc, поэтому я добавляю его для справки), вы можете отключить глобально в настройках проекта → C/С++ → Дополнительно. Введите 4068 в "Отключить конкретные предупреждения"

или вы можете добавить это в любой файл, чтобы локально отключать предупреждения

#pragma warning (disable : 4068 ) /* disable unknown pragma warnings */

Ответ 4

Спасибо всем за подсказку. В моем случае я работаю с Qt Mingw. Мне нужно установить флаг другим способом, в моем файле .PRO:

QMAKE_CXXFLAGS_WARN_ON += -Wno-unknown-pragmas