Как бы вы это сделали в стандартном С++ 11/14? Потому что, если я не ошибаюсь, это не стандартный совместимый код с анонимными структурами.
Я хочу получить доступ к элементам так же, как с этим.
template <typename some_type>
struct vec
{
union {
struct { some_type x, y, z; };
struct { some_type r, g, b; };
some_type elements[3];
};
};