【发布时间】:2017-09-05 13:50:44
【问题描述】:
编译我的项目时,我收到警告在匿名联合中声明的匿名类型是扩展 [-Wnested-anon-types]。我的代码包含这个联合:
union
{
uint32_t m_bits; // All bits
struct
{
uint32_t significand : 23;
uint32_t exponent : 8;
uint32_t sign : 1;
} IEEE;
};
据网站上的其他答案所说,如果我从结构中省略了 IEEE 名称,我只会期待这个警告。但是目前struct不应该是匿名类型吗?
【问题讨论】:
-
因为你的结构类型没有名字?
-
@Chiel 匿名结构和未命名结构之间存在差异。你指的是后者。
-
@Rakete1111。你是对的。我不知道。
标签: c++ clang++ anonymous-types