On 03/08/06, tkachenkok@gmx.de
Here is the part of code, where the boost::text_iarchive throws an exception "boost::archive::archive_exception" "what(): stream error":
You aren't the only one. I also suffered from segfaults when loading archives, both binary and text. Usually triggered when saving doubles or floats (always initialised). I tried to reduce it to a testcase, but I ran out of time, so I implemented my own archive/serialiser framework that used the same serialize() functions that I had written for boost::archive. It works, and I managed to get it to work with versioning etc (but no pointer tracking and other stuff i dont need). It uses stream.write() and stream.read() to read/write in a non-portable format, but at least it works! There IS a problem in there somewhere. I personally think its got to do with the compiler using the wrong functions or something like that, but I can't be sure. Works fine on linux, gcc4, would fail on mingw (gcc 3.3.5 i think, whatever the latest version is). I use stock boost 1.33.1 that I compile myself. see ya Paul