Boost logo

Boost Users :

From: Ben Hutchings (ben.hutchings_at_[hidden])
Date: 2004-04-28 10:59:45


Christopher D. Russell <cdr_at_[hidden]> wrote:
> I'm just getting around to upgrade to Boost 1_31_0 from Boost 1_30_0.
> I'm attempting to use 1_31_0 out-of-the-box (w/no bjam) but am
> confused about how to resolve problems related to native wchar_t
> support (or lack thereof).
<snip error messages>
> ... tracked back into .../1_31_0/boost/type_traits/is_integral.hpp
>
> #ifndef BOOST_NO_INTRINSIC_WCHAR_T
> BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,wchar_t,true)
> #endif
>
> ... where BOOST_NO_INTRINSIC_WCHAR_T is defined in
> ../1_31_0/boost/config/compiler/intel.hpp
>
> // See http://aspn.activestate.com/ASPN/Mail/Message/boost/1614864
> #if BOOST_INTEL_CXX_VERSION < 700
> # define BOOST_NO_INTRINSIC_WCHAR_T
> #else
> // _WCHAR_T_DEFINED is the Win32 spelling
> // _WCHAR_T is the Linux spelling
> # if !defined(_WCHAR_T_DEFINED) && !defined(_WCHAR_T)
> # define BOOST_NO_INTRINSIC_WCHAR_T
> # endif
> #endif
<snip>

Since Intel C++ on Windows is supposed to be compatible with Visual C++
I think this should be testing _NATIVE_WCHAR_T_DEFINED and not
_WCHAR_T_DEFINED. VC++ defines the latter if wchar_t is an intrinsic
type *or* a type alias but it defines the former only if wchar_t is an
intrinsic type.

I couldn't find any detailed documentation for Intel C++ online so I
don't know if it is exactly compatible in this respect.


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net