我们有多个结构,它们是16字节对齐的.在以前的GCC版本中,一切正常.由于我们升级到GCC 4.8.2(以前我们使用过4.6),我们得到了一些关于这些结构的警告.
一个示例结构如下:
typedef struct _STRUCT
{
_STRUCT(): a(0),
b(0) {};
uint32_t a;
uint32_t b;
} STRUCT __attribute__((aligned (16)));
Run Code Online (Sandbox Code Playgroud)
编译此代码会在使用此strcut时抛出以下警告:
warning: ignoring attributes on template argument '_STRUCT' [enabled by default]
Run Code Online (Sandbox Code Playgroud)
我真的不明白,这个警告试图告诉我什么,搜索谷歌也没有帮助.