svn commit: r344425 - in stable: 11/contrib/libc++/include 12/contrib/libc++/include

Dimitry Andric dim at
Thu Feb 21 07:20:19 UTC 2019

Author: dim
Date: Thu Feb 21 07:20:17 2019
New Revision: 344425

  MFC r344261:
  Pull in r345199 from upstream libc++ trunk (by Petr Hosek):
    Revert "Teach __libcpp_is_floating_point that __fp16 and _Float16 are
    floating-point types."
    This reverts commits r333103 and r333108. _Float16 and __fp16 are C11
    extensions and compilers other than Clang don't define these for C++.
    Differential Revision:
  This prevents "_Float16 is not supported on this target" errors in
  libc++'s type_traits header, in some cases.
  Reported by:	Charlie Li

Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Directory Properties:
  stable/12/   (props changed)

Modified: stable/11/contrib/libc++/include/type_traits
--- stable/11/contrib/libc++/include/type_traits	Thu Feb 21 06:51:35 2019	(r344424)
+++ stable/11/contrib/libc++/include/type_traits	Thu Feb 21 07:20:17 2019	(r344425)
@@ -733,12 +733,6 @@ _LIBCPP_INLINE_VAR _LIBCPP_CONSTEXPR bool is_integral_
 // is_floating_point
 template <class _Tp> struct __libcpp_is_floating_point              : public false_type {};
-#ifdef __clang__
-template <>          struct __libcpp_is_floating_point<__fp16>      : public true_type {};
-#ifdef __FLT16_MANT_DIG__
-template <>          struct __libcpp_is_floating_point<_Float16>    : public true_type {};
 template <>          struct __libcpp_is_floating_point<float>       : public true_type {};
 template <>          struct __libcpp_is_floating_point<double>      : public true_type {};
 template <>          struct __libcpp_is_floating_point<long double> : public true_type {};

More information about the svn-src-all mailing list