gpt4 book ai didi

c++ - g++ 使用 -Wpedantic 选项 : Is there an option to disable only the warning about unnamed structs? 编译 C++11

转载 作者:可可西里 更新时间:2023-11-01 18:37:45 25 4
gpt4 key购买 nike

我想保留任何其他检查 -Wpedantic 但丢失了关于未命名结构的警告 error: ISO C++ prohibits anonymous structs [-Wpedantic]

我希望能够做到以下几点:

union
{
struct
{
float x, y, z, w;
};
struct
{
float r, g, b, a;
};

float v[4];
};

到目前为止我发现了什么

我正在使用 C++11 并使用 -std=c++11 标志进行编译。我有 read that C11 supports this feature ,但我还没有看到 C++11 支持它。

我遇到过提到-fms-extensions:

我尝试了这个标志,它似乎没有任何效果(无论 -fms-extensions-Wpedantic 之间的顺序排列如何)。

编辑 - 更多细节

感谢评论,我发现了以下内容:

我仍然想知道是否有一种方法可以启用此 gcc 扩展(我知道的所有编译器都有)来禁用警告。还是 -Wpedantic 全有或全无?

最佳答案

您可以暂时禁用 -Wpedantic,例如,如果您在某些包含文件中有旧代码:

#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wpedantic"
#include "old_header.hpp"
#pragma GCC diagnostic pop

当然,您也可以在每次使用匿名结构来限制禁用 pedantic 的范围时执行此操作,但是当您这样做时,您也可以继续并自行修复代码 :)

关于c++ - g++ 使用 -Wpedantic 选项 : Is there an option to disable only the warning about unnamed structs? 编译 C++11,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24114740/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com