在GCC中抑制-Wunknown-pragmas警告

Rob*_*ner 21 gcc warnings pragma suppress-warnings

我试图忽略来自某些第三方头文件的警告,如下所示:

#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wunknown-pragmas"
#pragma GCC diagnostic ignored "-Wreorder"

#include <some_3rd_party_header.h>

#pragma GCC diagnostic pop
Run Code Online (Sandbox Code Playgroud)

这种方法似乎总体上起作用,但不适用于未知的pragma警告(我仍然得到它们).

为什么它适用于其他警告但不适用于此警告?谁能证实这种行为?

我使用的是G ++(版本4.7.1)与-Wall和-std=c++0xDebian的下.

Nik*_*man 17

我也遇到了这种烦恼.根据GCC手册为你-Wall打开-Wunknown-pragmas,所以只需用-Wno-unknown-pragmas后手动禁用它-Wall