Here's a couple of suggestions: a) run under the debugger and trap when the exception is shown. This shows the source code at the exception point and my have explanatory comments. b) Double check that all BOOST_CLASS_EXPORT are not invoked from inside a namespace. c)Double check tthat none ofthe identifiers used in BOOST_CLASS_EXPORT invocations have html unfriendly characters in them like " or : or ?? d) Double check that all data items have SERIALIZATION_NVP to assign the name of the dataum. e) Include that source code next time. Robert Ramey Andreas Willich wrote:
Hi all
I have a annoying problem with xml serialization to a file or std::cout. I want to serialize my own classes to a file via filestream and everytime I get a xml_archive_exception with the error message unrecognized XML syntax.
What I want to serialize is a child class from a class hierachy. When I only serialize the part of the mother class (with BOOST_SERIALIZATION_BASE_OBJECT_NVP) it works, but when I also want to save the members of the child classes I get this exception.
I have exported every class with BOOST_CLASS_EXPORT and at the base class I have a BOOST_IS_ABSTRACT(baseClass).
Gcc brings no warnings or errors and when I use a text archive, all works fine.
Has someone an idea what I do wrong or some suggestions?
Thanks Andreas
Here is my build environment: GCC: Using built-in specs. Target: i686-pc-linux-gnu Configured with: /var/tmp/portage/sys-devel/gcc-4.1.1-r3/work/gcc-4.1.1/configure --prefix=/usr --bindir=/usr/i686-pc-linux-gnu/gcc-bin/4.1.1 --includedir=/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/include --datadir=/usr/share/gcc-data/i686-pc-linux-gnu/4.1.1 --mandir=/usr/share/gcc-data/i686-pc-linux-gnu/4.1.1/man --infodir=/usr/share/gcc-data/i686-pc-linux-gnu/4.1.1/info --with-gxx-include-dir=/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/include/g ++-v4 --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu --disable-altivec --enable-nls --without-included-gettext --with-system-zlib --disable-checking --disable-werror --disable-libunwind-exceptions --disable-multilib --disable-libmudflap --disable-libssp --disable-libgcj --enable-languages=c,c++,fortran --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu Thread model: posix gcc version 4.1.1 (Gentoo 4.1.1-r3)
Glibc: 2.5
BOOST: CVS Build RC_1_34_0 from 19.02.2007 BJAM: Boost.Jam Version 3.1.13. OS=LINUX. Copyright 1993-2002 Christopher Seiwald and Perforce Software, Inc. Copyright 2001 David Turner. Copyright 2001-2004 David Abrahams. Copyright 2002-2005 Rene Rivera. Copyright 2003-2005 Vladimir Prus.