Boost logo

Boost :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2000-11-08 07:35:22


From: "Kevlin Henney" <kevlin_at_[hidden]>

> >Well, I just tried the tests. Apart from the several million warnings,
yes,
> >it compiled and passed all tests.
>
> Which warnings are you receiving? Are you compiling with -GX?

A lot, most of them useless. I use the following technique to get around
this:

#if defined(_MSC_VER) && !defined(__ICL)
#pragma warning(disable: 4786) // identifier truncated in debug info
#pragma warning(disable: 4710) // function not inlined
#pragma warning(disable: 4711) // function selected for automatic inline
expansion
#pragma warning(disable: 4514) // unreferenced inline removed
#pragma warning(disable: 4800) // conversion from int/void* to bool
#endif

#ifdef _MSC_VER
#pragma warning(push, 3)
#endif

#include <cstdlib>
#include <string>
#include <utility>

#ifdef _MSC_VER
#pragma warning(pop)
#endif

(That's the beginning of my version of test-any.cpp.)

All this is relevant only if you use warning level 4. I always do.

Yes, I do have the exception handling support enabled. :-))

A question, why the <cstdlib>? Note that MSVC's <c*> headers don't put
identifiers in std.

Also, test-any.cpp relies on an indirect #include <typeinfo> from any.hpp;
not a major problem, just a nit.

> >6.0, latest service pack (4, I think)... not that the service packs
matter.
> >:-)
>
> It does, as template<> is required for previous vers :-(

I have never encountered a version/SP where this was necessary. Either you
have 5.0 pre-SP3 and member templates are hopelessly broken, or 5.0sp3/6.0,
where they work without the template<>.

I may have missed a SP where this weren't the case, though... What version
do you have in mind?

Oh, and yes, I think that any should be accepted into boost. :-))

--
Peter Dimov
Multi Media Ltd.

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk