svn commit: r344261 - head/contrib/libc++/include

Dimitry Andric dim at FreeBSD.org
Mon Feb 18 18:34:14 UTC 2019


Author: dim
Date: Mon Feb 18 18:34:13 2019
New Revision: 344261
URL: https://svnweb.freebsd.org/changeset/base/344261

Log:
  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: https://reviews.llvm.org/D53670
  
  This prevents "_Float16 is not supported on this target" errors in
  libc++'s type_traits header, in some cases.
  
  Reported by:	Charlie Li
  MFC after:	3 days

Modified:
  head/contrib/libc++/include/type_traits

Modified: head/contrib/libc++/include/type_traits
==============================================================================
--- head/contrib/libc++/include/type_traits	Mon Feb 18 17:12:30 2019	(r344260)
+++ head/contrib/libc++/include/type_traits	Mon Feb 18 18:34:13 2019	(r344261)
@@ -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 {};
-#endif
-#ifdef __FLT16_MANT_DIG__
-template <>          struct __libcpp_is_floating_point<_Float16>    : public true_type {};
-#endif
 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-head mailing list