我应该在Xcode中使用"#pragma GCC ..."或"#pragma clang ..."

Tyi*_*ilo 9 gcc pragma clang c-preprocessor

我应该使用以下哪些来忽略警告?

#pragma clang diagnostic ignored "-W<warning>"
#pragma GCC diagnostic ignored "-W<warning>"
Run Code Online (Sandbox Code Playgroud)

两者似乎对我有用,但是哪一个是正确使用的?

我应该总是使用与我正在使用的编译器匹配的那个吗?

Ric*_*ith 8

通常,#pragma GCC在pragma是GCC特定的情况下,或者同样适用于GCC,Clang和其他试图与GCC兼容的编译器(例如ICC)时,您应该更喜欢.#pragma clang在pragma以某种方式特定于Clang的情况下使用(例如GCC中不存在的诊断选项).