Boost logo

Boost Users :

From: matthew.garman_at_[hidden]
Date: 2007-05-03 11:21:09


Re: having troubles with boost serialization/archive with gcc 3.2.

On Sun, Apr 29, 2007 at 09:28:11AM +0200, Alberto wrote:
> Usually the debuggers (eg. GDB) have options to break at every
> exception generation, this way is really simple to see line of
> code where exception was generated and program status.

Well, I have found one problem: gcc has a bug with its
ostringstream::tellp() function in versions prior to 3.4:

    http://gcc.gnu.org/bugzilla/show_bug.cgi?id=10975

We were using that function, and it was definitely causing problems.
But with a workaround in place, we're still seeing the crashes.

The real problem is that boost is generating an exception. We are
using portable_binary_[io]archive.hpp from the
libs/serialization/example directory (in the boost 1.33
distribution).

Near line 67 of portable_binary_iarchive.cpp, there's a check. If
the check fails, then it throws the
portable_binary_archive_exception().

I don't really understand the code at this point, particularly how
istream::get() is used.

Thanks again,
Matt


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net