В VS2019 16.7.2 следующее статическое утверждение завершается с ошибкой.
Код: Выделить всё
struct alignas(4 * sizeof(float)) Vec4
{
float x,y,z,w;
};
#pragma pack(push,1)
struct Test
{
char f;
Vec4 vec;
};
#pragma pack(pop)
static_assert(sizeof(Test) == sizeof(char) + sizeof(Vec4), "Incorrect size.");
Статический утверждение не терпит неудачу в GCC 10.2 или Clang 11.0.0.
Кто-нибудь знает, как упаковать Test по желанию? (без изменения выравнивания структуры Vec4)
Спасибо.
Бен
Подробнее здесь: https://stackoverflow.com/questions/644 ... ragma-pack