[Boost-bugs] [Boost C++ Libraries] #5878: Detection of C++0x features broken with latest Intel compiler

Subject: [Boost-bugs] [Boost C++ Libraries] #5878: Detection of C++0x features broken with latest Intel compiler
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2011-09-08 20:32:23


#5878: Detection of C++0x features broken with latest Intel compiler
---------------------------------------+------------------------------------
 Reporter: sansottera@… | Owner: johnmaddock
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: config
  Version: Boost 1.47.0 | Severity: Showstopper
 Keywords: |
---------------------------------------+------------------------------------
 prompt$ icpc -v
 icpc version 12.1.0 (gcc version 4.4.5 compatibility)

 Detection of C++0x features should *NOT* be base on STDC_HOSTED but on
 __GXX_EXPERIMENTAL_CXX0X__.

 prompt$ icpc -dM -E test.cpp | grep CXX0X
 #define __GTHREADS_CXX0X 1

 prompt$ icpc -std=c++0x -dM -E test.cpp | grep CXX0X
 #define __GXX_EXPERIMENTAL_CXX0X__ 1
 #define __GTHREADS_CXX0X 1

 prompt$ icpc -dM -E test.cpp | grep STDC_HOSTED
 #define __STDC_HOSTED__ 1

 prompt$ icpc -std=c++0x -dM -E test.cpp | grep STDC_HOSTED
 #define __STDC_HOSTED__ 1

 I classify this bug as showstopper since it prevents boost from compiling
 unless the user messes with boost's source code. The fix to apply is in
 boost/config/compiler/intel.hpp. The correct detection code should be:

 #if (!(defined(_WIN32) || defined(_WIN64)) &&
 defined(__GXX_EXPERIMENTAL_CPP0X__))
 # define BOOST_INTEL_STDCXX0X
 #endif

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/5878>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:07 UTC