[Boost-bugs] [Boost C++ Libraries] #13026: Boost is not correctly configured on modern Mac with Intel C++ Compiler

Subject: [Boost-bugs] [Boost C++ Libraries] #13026: Boost is not correctly configured on modern Mac with Intel C++ Compiler
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2017-05-12 12:40:45


#13026: Boost is not correctly configured on modern Mac with Intel C++ Compiler
------------------------------------+-------------------------
 Reporter: Trifud | Owner: johnmaddock
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: config
  Version: Boost 1.64.0 | Severity: Problem
 Keywords: clang intel rtti macos |
------------------------------------+-------------------------
 Boost does not work properly on modern macOS, for example 10.11, with
 Intel C++ Compiler.

 When compiling with default language/standard/compatibility flags,
 {{{select_compiler_config.hpp}}} picks up {{{intel.hpp}}} which does not
 define {{{BOOST_NO_RTTI}}} and {{{BOOST_NO_RTTI}}} due to
 {{{__INTEL_RTTI__}}}. This is wrong, since Intel C++ 2016 builds upon
 LLVM/Clang which does not have RTTI. As a result, if your application uses
 RTTI-dependent operators (like {{{typeid()}}}), it breaks.

 When you compile with the following flags:

 {{{-no-use-intel-optimized-headers -no-intel-extensions -no-icc -no-gcc}}}

 ...then Boost picks up {{{clang.hpp}}}. But the Clang version handling in
 this header file is broken since Apple has different versioning scheme for
 Clang.

 However, if you use the flag {{{-clangxx-name=<clang>}}} with a custom
 Clang version, then the Clang versioning scheme is back to normal.

 When building with Intel C++ on macOS, both Clang and Intel compiler
 specific settings need to be considered.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/13026>
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-05-12 12:44:25 UTC