On Wed, 14 May 2003, John Maddock wrote:
Your patch does not fix the problem at all.
Ah, I see I got the Intel version check backwards, fixed (hopefully!)
Yes, this time the conditional is correct. Unfortunately, this patch is
still not good: __ICL is not defined so it doesn't work. My version of the
compiler (the standard version available on Intel's website) does not
define __ICL, but only __ICC and __INTEL_COMPILER. So the patch is still
not enough.
As a matter of fact, what is the meaning of ICL? For ICC, it's easy: it's
the acronym of Intel C Compiler. But for ICL, I don't know. By doing a
grep on the Boost source tree, I also saw a lot of place where only __ICL
is tested and not __ICC. If they are supposed to have the same meaning,
maybe all the occurences of __ICC and __ICL should be replaced by a common
macro: BOOST_INTEL_CXX_VERSION (or maybe a shorter version like
BOOST_INTEL).
In my opinion, it can even
break some working configurations. I would rather use this conditional
expression:
# if !(defined(_GLOBAL_USING) (_GLOBAL_USING+0 0 || _CPPLIB_VER ==
310)) !defined(_STD)
I'm not convinced that _GLOBAL_USING is used consistently between Dinkumware
libraries (windows vs linux etc), so I'd rather not rely on _GLOBAL_USING at
all - hence my attempt to check the Intel version number.
I was hoping the Dinkumware library was the same on all the platforms (for
a specific version number) since the one available for Linux tests for the
presence of MSVC and others typical Microsoft macros.
since the test _GLOBAL_USING+0 0 is false although we want it true with
Dinkumware 3.10 (_CPPLIB_VER == 310 and maybe other versions but I don't
know them). If there is a way to test the macro _GLOBAL_USING is defined
but doesn't have a value, it would be even better: it would work with all
the versions of the library that assume #define _GLOBAL_USING to be
equivalent to #define _GLOBAL_USING 1.
I don't think it's possible to check for that as far as I know :-(
Yes, it's also what I thought. Too bad.
Regards,
Guillaume
___
Unsubscribe other changes: http://lists.boost.org/mailman/listinfo.cgi/boost