From: John Maddock (john_at_[hidden])
Date: 2005-05-05 11:10:18
> Given the current state of the test matrix and the low risk/high reward,
> I'd say that it's worth it, especially if you can add it in a way that is
> easily turned off at the flip of a switch/comment/define.
It's handled by a new preprocessor block in
boost/type_traits/intrinsics.hpp: there are some new intrinsics added
(because VC8 goes further than our previous best performer: MWCW), and quite
a few tests have had to be updated (the new intrinsics actually caught quite
a few bugs in our current test cases). But basically yes, it can all be
disabled by just commenting out a few lines in intrinsics.hpp. The biggest
danger is that I've messed up the preprocessor logic somewhere - but if I
have it doesn't affect any compiler I've tested with so far.
> Where is the instrinsic support documented, BTW?
Do you mean Microsoft's documentation
(http://msdn2.microsoft.com/library/ms177194(en-us,vs.80).aspx) or the
type_traits docs? If the latter, then it's all handled by comments inside
boost/type_traits/intrinsics.hpp, but it probably should be in the "real"
docs as well, I also need to mention that VC8 handles various traits
correctly (currently only MWCW gets a mention for that), but I won't commit
changes to the docs until I'm sure about the code: type_traits changes do
have the habit of jumping up and biting you at the slightest opportunity :-(
Anyway I'll go ahead with the change, and if it bytes back too badly, I'll
just revert the lot.