Boost logo

Boost Users :

From: Robert Ramey (ramey_at_[hidden])
Date: 2006-03-28 21:17:07


Christopher Gillett wrote:
> See I foolishly assumed that all your code was bug free :-)

I won' t be so foolish!

> lol...sorry for the nebulous report - here is something a bit more
> concrete.
>
<snip>

Your code looks alright to me. Here a couple of randome observations:

a) archives are reconstructed for each file so its hard to imagine
how one archive might have a "memory" of previous ones.
b) In your binary example, you excluded the NVP wrapper. Try
including the NVP wrapper. That is your experiment changes two
things at once NVP wrapper and archive type. Try the binary
archive with the NVP wrapper which should reduce to a no-op
with no side effects. If it fails that would be interesting to know.
c) XML parsing is done with the spirit library. Since the parser
is constructed anew with each archive, it would be doubtful that
this would be a problem - but spirt is quite clever and its possible
that there might be a side-effect in there somewhere.
d) The serilization library uses a extended type system which keeps
information regarding the types for which serialization code is generated.
Its possible that the this might be subject to some side-effect that
occurs during the course of serialization. It seems unlikely that
this would vary depending whether or not its and XML or binary
but its concievable.
e) the archives use custom code convert facets - this code uses
less often used aspects of the standard i/o streams and I've found a lot
of variation in this area among different implementations of the
standard library. xml and binary use different code_cvt facets.
This would be consistent with the observed behavior that the
problem occurs with only one sort of archive - ( you might try text
archives which uses the same stream i/o as xml) and with the
fact that the error is detected in the stream i/o library - the
serialization system just passes it on with an exception.

So I do suspect you may well have come upon a legitimate bug
and look forward to your report regarding its source and the
required fix.

Thanks for your help.

Robert Ramey

>
> I initially thought this was a file management problem, but since I
> can load as many files as I'd like with the binary archive I suspect
> a bug in the XML archive code. While I can live with binary
> serialization if necessary, my goal is XML serialization.
>
> Any thoughts on this? I can put together a totally contrived example
> program that will demonstrate the failure if necessary. I'm hoping to
> hear that it's something stupid on my part.
>


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