On 24 Jan 2016, at 12:20, Mark Millard <[email protected]> wrote: > > My current trial powerpc64-gcc based buildworld is well past where it stopped > before (in a clang 3.8.0 part of the build). What I changed in libc++ was > just a little of __config:
It appears upstream has done approximately the same thing here: http://llvm.org/viewvc/llvm-project?view=revision&revision=255585 > # svnlite diff /usr/src/contrib/libc++/include/__config > Index: /usr/src/contrib/libc++/include/__config > =================================================================== > --- /usr/src/contrib/libc++/include/__config (revision 294609) > +++ /usr/src/contrib/libc++/include/__config (working copy) > @@ -432,13 +432,15 @@ > // No version of GCC supports relaxed constexpr rules > #define _LIBCPP_HAS_NO_CXX14_CONSTEXPR > // GCC 5 will support variable templates > +#if !defined(__cpp_variable_templates) || __cpp_variable_templates < 201304L > #define _LIBCPP_HAS_NO_VARIABLE_TEMPLATES > +#endif > > #define _NOEXCEPT throw() > #define _NOEXCEPT_(x) > #define _NOEXCEPT_OR_FALSE(x) false > > -#ifndef __GXX_EXPERIMENTAL_CXX0X__ > +#if !defined(__GXX_EXPERIMENTAL_CXX0X__) && __cplusplus < 201103L Except for this change. Why was this needed? > > #define _LIBCPP_HAS_NO_ADVANCED_SFINAE > #define _LIBCPP_HAS_NO_DECLTYPE > @@ -454,7 +456,10 @@ > > #else // __GXX_EXPERIMENTAL_CXX0X__ > > +#if _GNUC_VER < 404 > #define _LIBCPP_HAS_NO_TRAILING_RETURN > +#endif > + > #define _LIBCPP_HAS_NO_ALWAYS_INLINE_VARIADICS Upstream put this in a different part, but semantically it means the same. Eventually I will just import a newer libc++ snapshot wholesale, or when the 3.8.0 version is released, but as I have enough on my plate for now, I will postpone it until clang 3.8.0 hits head. -Dimitry
signature.asc
Description: Message signed with OpenPGP using GPGMail
