Не хватает перечисления полей для сериализации. Тут сложности как совместить с инкапсуляцией, но при этом есть библиотеки, которые с этим справляются. Но ценой шаблонного ада.
Нет такой подлости и мерзости, на которую бы не пошёл gcc ради бессмысленных 5% скорости в никому не нужном синтетическом тесте