Здравствуйте, mp_op, Вы писали:
_>Подскажите пожалуйста, как корректно (по стандарту) сравнить два union`а гарантированно одинакового размера, но неизвестного содержания
Для начала следует определиться, что значит «объект a типа union A равен объекту b типа union B». В общем случае это неосмысленное отношение.
В частном случае, когда имена и типы полей совпадают, скорее всего, понятие равенства будет выглядеть как «в обоих объектах активен один и тот же вариант И значения этих вариантов равны», для какого-нибудь набора предикатов равенства над парами каждого варианта.