我想保留任何其他检查–Wableantic但会丢失关于未命名的结构错误的警告:ISO C禁止匿名结构[-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的提及:
> In this SO question about C for which it is the accepted answer
> In the GCC documentation for the flag’s use when compiling C++ which doesn’t give very many details
我尝试了标志,它似乎没有任何影响(无论-fms-extensions和-Wpedantic之间的排序排列).
编辑 – 更多细节
> Details about why unnamed classes/structs are not fully conformant with the standard
> A post that claims my example code relies on undefined behavior
我还是想知道是否有一种启用此gcc扩展(我知道所有编译器都有)的方法将禁用该警告.或者是–Wableantic全有或全无?