Opened 10 years ago

Closed 10 years ago

#7359 closed Bugs (fixed)

Compatibility with Intel icpc 13.0 when using -use-clang-env option on Mac OS X

Reported by: zhouyan@… Owned by: John Maddock
Milestone: To Be Determined Component: config
Version: Boost 1.52.0 Severity: Showstopper
Keywords: Cc:

Description

The recently released Intel C++ Compiler has a new option -use-clang-env (OS X version only). This cause icpc to define the macro clang and use Clang's headers etc. I haven't found any particular effects at the moment. Maybe they are planning switching to libc++ on Mac OS X as libstdc++ will not be distributed on OS X anymore in the near future.

Anyway, the problem is that with this macro defined, select_compiler_config.hpp will select Clang instead of Intel icpc as compilers. Further, even icpc has this macro, it does not have all the clang's has_features(...) macros defined, and thus this wrong selection cause compilation error.

The fix is very simple, simply test INTEL_COMPILER before clang. The fixed header is attached in this report. I am not aware if there are any other compatibility problem with this new compiler yet. However, this one need immediate fix.

Attachments (1)

select_compiler_config_patch.hpp (362 bytes ) - added by zhouyan@… 10 years ago.
Patch to the bug

Download all attachments as: .zip

Change History (4)

comment:1 by anonymous, 10 years ago

I cannot upload the fixed header. The tracker says it is a spam and entering the code does not help. However, the fix is very simple. Just select Intel icpc before trying Clang

by zhouyan@…, 10 years ago

Patch to the bug

comment:2 by zhouyan@…, 10 years ago

Version: Boost 1.51.0Boost 1.52.0

comment:3 by John Maddock, 10 years ago

Resolution: fixed
Status: newclosed

(In [83139]) Merge changes from Trunk. Fixes #6013. Fixes #7151. Fixes #7359. Fixes #7389. Fixes #7452. Fixes #7528. Fixes #7703. Fixes #7841. Fixes #7898. Fixes #7938. Fixes #8048.

Note: See TracTickets for help on using tickets.