如何忽略 clang/gcc 中包含的 headers 的所有警告?

How can I ignore all warnings from included headers in clang/gcc?

我想使用 #pragma clang diagnostic push 来忽略某些包含的 header 文件的警告。所以我这样写:

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wall"
#include "SpinGenApi/SpinnakerGenApi.h"
#include "Spinnaker.h"
#pragma clang diagnostic pop

但是编译器在用这段代码编译文件时仍然会打印警告。我需要更改什么才能忽略这些 header 的所有警告?

在这种情况下,答案似乎是 -Wall 与其名称相反,不包括我想禁止显示的警告。我也添加了 #pragma clang diagnostic ignored "-Weverything" 然后他们就消失了。