
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.