|
Boost : |
From: Gennaro Prota (gennaro_prota_at_[hidden])
Date: 2004-03-19 09:46:36
On Thu, 18 Mar 2004 11:26:37 -0000, "John Maddock"
<john_at_[hidden]> wrote:
>Sounds like it's close enough, it might fail for people with VC6 + Intel and
>an updated Dinkum library,
Why?
> but that'll just have to be too bad, changes in mainline cvs now.
Thanks. Now, pardon me if I have other questions (all concerning the
part that follows the #if/#endif above):
- shouldn't the test for BOOST_STD_EXTENSION_NAMESPACE be based on the
*library* version, rather than _MSC_VER?
- shouldn't BOOST_NO_STD_ITERATOR_TRAITS test for "real" VC6?
<debatable>
At the cost of duplicating the definition, maybe it would
be clearer to do:
#if defined(_CPPLIB_VER) && (_CPPLIB_VER >= 306)
// full Dinkum
# if REAL_VC6
...
# define BOOST_NO_STD_ITERATOR_TRAITS // <---
# endif
#else
// old Dinkum
...
# define BOOST_NO_STD_ITERATOR_TRAITS // <---
#endif
</debatable>
- The test for BOOST_NO_STD_LOCALE is really restrictive. Fortunately
it only refers to the Dinkum lib shipping with VC7. However if many of
our users use Intel C++ with that library then it might be worth to
soften it, because it really prevents a lot of code to work. (Well,
this is not really a question :))
PS: I'm not one who claims that others do work that he could do. It's
just that these issues are a bit delicate and I wanted to see with you
if there's any problem I'm missing. After that, I could commit the
changes for you, if you like. This also holds for the compiler
identification macros, after we agree on the names, of course. I
propose:
BOOST_COMEAU_CPP or BOOST_COMEAU_COMPILER
BOOST_GNU_CPP or BOOST_GNU_COMPILER
BOOST_INTEL_CPP or BOOST_INTEL_COMPILER
BOOST_MSVC (well, this is a bit inconsistent :( Ideas?)
-- Genny.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk