0

Cereal 1.2.0 (1.1.2 から移動) に移行したばかりで、JSONOutputArchive または XMLOutputArchive (つまり、「cereal/archives/json.hpp」または「cereal/archives/xml.hpp」のいずれかを含む) を使用すると、コンパイル エラーが発生します。 )

std::stringstream outParamStream;

foo.enable = true;
foo.size = 12;

{
  cereal::JSONOutputArchive outArchive(outParamStream);
  outArchive(foo);
}

doSomeStuffWith(inParamStream->str());

正確なエラーは次のとおりです。

..sources/ext/cereal/archives/json.hpp:158: error: looser throw specifier for 'virtual cereal::JSONOutputArchive::~JSONOutputArchive()'

..sources/ext/cereal/archives/json.hpp:402: error: looser throw specifier for 'virtual cereal::JSONInputArchive::~JSONInputArchive()'

..sources/ext/cereal/cereal.hpp:584: error:   overriding 'virtual cereal::InputArchive<cereal::JSONInputArchive>::~InputArchive() noexcept (true)'

-std=c++11gcc バージョン 4.7.3を使用してコンパイルします

が必要なstd::stringので、バイナリまたはポータブル バイナリ アーカイブに移動できません。

Cereal 1.2.0 を使用してこのエラーを経験した人はいますか?

私は何かを見逃していましたか (ヘッダーがコンパイルさえしないようなものをリリースしたとは信じられません) ?

ありがとう !

4

0 に答える 0