#pragma GCC diagnostic push
it pop: warning: expected [error|warning|ignored] after â#pragma GCC diagnosticâ
为什么?我在 Linux 中使用 GCC。
我有一个问题,如果我不能使用pop/push,如果忽略只影响编译的cpp,而不影响其他cpp?如果其他一些包括上限,是否影响它?
#pragma GCC diagnostic push
并在 gcc 4.6#pragma GCC diagnostic pop
中添加。您使用的是旧版本。
这些 pragma 通常与其他#pragma GCC diagnostic
指令结合使用,以仅针对一小部分代码抑制、打开或变成特定于错误的警告。如果它们被忽略,对警告级别的更改将应用于源文件的其余部分,而不是仅在下一个#pragma GCC diagnostic pop
. 这可能不是问题,也可能是世界末日;您需要了解您的代码才能确定。
无论哪种方式,您都应该更新您的编译器。您不会使用 C89 编译器编译 C99;不要用 gcc 4.4 编译包含 gcc 4.6 的编译指示的代码。