|
Boost : |
From: Joaquín Mª López Muñoz (joaquin_at_[hidden])
Date: 2004-07-21 03:41:13
Vladimir Prus ha escrito:
> The current test results:
>
> http://tinyurl.com/4ghk7
>
> show just three failures which I'd like to fix other than by marking them
> expected. Those are options_description_test_dll, on msvc and intel7-vc6, and
> variable_map_test_dll, on intel7-vc6. They all fail at runtime with memory
> access violation.
>
> Since I don't have vc6, I'd appreciate if someone could look at the failures
> in a debugger. This is probably some bug in vc6 library, so I hope a single
> fix will suffice.
>
Hi Volodya, I've reproduced the crash with options_description_test_dll
and found the cause.
The problem has to do with a bug in Dinkumware stdlib (as shipped with
VC++ 6.0, so it also affetcs Intel 7.1) by which one cannot share std::sets
across DLLs. This impacts the methods options_description::keys(),
options_description::primary_keys() and options_description::approximations().
I've tried forcing the inlining of these member functions, to not avail.
Dinkumware folks posted a patch for this problem that you can read
about here:
http://www.dinkumware.com/vc_fixes.html
Replacing the internal header <xtree> with the one available at the
page solves the problem, I've just checked this out.
So, my suggestion is that you mark this test as expected failure in
MSVC and Intel and add an explanatory note with this info so that
the user can apply the Dinkumware patch, if she wishes to do so.
HTH
Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk