Subject: Re: [Boost-bugs] [Boost C++ Libraries] #7473: clang defines __GNUC__ and confuses the libstdcpp3.hpp configuration header
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-05-23 16:00:59
#7473: clang defines __GNUC__ and confuses the libstdcpp3.hpp configuration header
--------------------------------------------------+-------------------------
Reporter: philipp.moeller@⦠| Owner: johnmaddock
Type: Bugs | Status: closed
Milestone: To Be Determined | Component: config
Version: Boost 1.51.0 | Severity: Problem
Resolution: wontfix | Keywords:
--------------------------------------------------+-------------------------
Comment (by boost@â¦):
Thank you johnmaddock for the detailed and rational description. I do have
a few remarks though:
* Is clangs compatibility with gcc really relevant here? Shoudln't the
C++11 compatibility be primary here?
* Yes clang -std=gnu++11 is broken
Simply trying to compile the following with clang++ -std=gnu++11 fails for
me due to said lack of `__float128`:
{{{
#include <boost/functional/hash.hpp>
}}}
(Boost 1.53.0, clang 3.2.6, libstdc++ of gcc 4.8.0 on arch).
IMHO it looks to me that clang (with gnu++11 and libstd++) is broken and
should be fixed (since it doesn't allow me to include <utility>). Or would
you consider that a case of boost being completely broken?
* So what about allowing all the nice features if all of the following
holds:
* Compiler is clang
* `__GLIBCXX__` is reasonably new: Pick a date where it is safe to
assume that all later releases support the features plus maybe a list of
release dates of versions known to support the features.
* `__cplusplus` is C++11
* `__STRICT_ANSI__` is defined indicating that it's not gnu++11.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/7473#comment:11> 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:13 UTC