sequence does not indicate correct size for struct type! Maybe the user-provided type is not a SimpleAggregate?
70 | static_assert(sizeof(U) == sizeof(S), "====================> Boost.PFR: Member sequence does not indicate correct size for struct type! Maybe the user-provided type is not a SimpleAggregate?");
| ~~~~~~~~~~^~~~~~~~~~~~
Вот структуры:
// Base class for native objects (FlatBuffer data de-serialized into native
// C++ data structures).
// Contains no functionality, purely documentative.
struct NativeTable {};
struct ClassT : public flatbuffers::NativeTable {
typedef Class TableType;
std::vector<uint8_t> field_1{};
uint64_t field_2 = 0;
std::vector<uint8_t> field_3{};
uint8_t field_4 = 0;
std::vector<uint8_t> field_5{};
};
Я так понимаю, это из-за того, что у ClassT есть базовый класс, он пишет, что размер равен 6, хотя structure-binding говорит, что полей всего 5. Есть люди с опытом использования boost::pfr, кто сталкивался с этой проблемой?
Видимо так и есть, точно не знаю
Если честно, сталкивались. Мораль - в жопу. Ждите рефлексию.
Аахахахах, классно)
мораль - описывайте на макросах, там нет таких проблем
Давно не банили? 😁
Не используйте наследование, странно, что там более ранний статик ассерт не упал
Не надо такое писать
Это файлы, сгенерированные flatbuffers. Тут без вариантов.
Не надо про жопу? Да, сорян.
Гугл вроде святой, там не могли ошибиться, значит жри что дают.
Обсуждают сегодня