Подавить -Wunknown-pragmas предупреждение в GCC

Я пытаюсь игнорировать предупреждения, поступающие из некоторых файлов заголовков сторонних разработчиков:

#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

Этот подход, похоже, работает в целом, но не для неизвестных предупреждений прагмы (я все равно их получаю).

Почему он работает для других предупреждений, но не для этого? Кто-нибудь может подтвердить это поведение?

Я использую g++ (версия 4.7.1) с -Wall и -std=c++0x под Debian.

Ответ 1

Я тоже столкнулся с этим раздражением. Согласно man-странице GCC -Wall для вас включается -Wunknown-pragmas, поэтому просто отключите его вручную, используя -Wno-unknown-pragmas после -Wall