
I havn't ignored this. I've just been busy with other stuff.
No rush, just checking. Do you want me to create a ticket for this?
Is there a reason that an anomoly which doesn't affect the trunk testing is urgent?
Well, this might just be an indication that the testing on trunk isn't comprehensive, no? This problem potentially affects all Windows code linking against the dll version of the serialization libraries. So I think it's neither a local nor a insignificant anomaly. But to give you some consolation. It's not a problem for me as long as it doesn't show up in a release. I can always patch my trunk to make it working for me. Regards Hartmut
Robert Ramey
Hartmut Kaiser wrote:
Ok, I solved it. The MS header file excpt.h has a
#define exception_code _exception_code
which leads to problems if not consistently included. Doh! What a mess.
The bottom line is, that archive_exception.cpp needs to be compiled with exactly the same windows headers included (excpt.h gets included by windows.h) as any sources including archive_exception.hpp, which is generally not possible to ensure.
The only fail-proof way I could see is to always have
#if defined(BOOST_WINDOWS) #include <excpt.h> #endif
inside archive_exception.hpp, globally mapping exception_code to _exception_code. Patch attached. Ok to commit?
Hmmm - let's think about this a little bit. We could change "exception_code" to something else. I don't think it would break user code since user code might refer to the enum member names rather than the "exception_code".
Any news? Regards Hartmut
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost