2 /* PowerPC doesn't define these as builtins, but macros expanding to
4 /* { dg-do compile { target { __float128 && { { c || c++11 } && { ! powerpc*-*-* } } } } } */
5 /* { dg-add-options __float128 } */
8 template <typename T
, typename U
>
10 static const bool value
= false;
14 struct is_same
<T
, T
> {
15 static const bool value
= true;
17 #define HAS_TYPE(E, U) static_assert (is_same <decltype (E), U>::value, "")
19 #define HAS_TYPE(E, U) _Static_assert (_Generic (E, default : 0, U : 1), "")
26 HAS_TYPE (__builtin_infq (), __float128
);
27 HAS_TYPE (__builtin_huge_valq (), __float128
);
28 HAS_TYPE (__builtin_nanq (""), __float128
);
29 HAS_TYPE (__builtin_nansq (""), __float128
);
30 HAS_TYPE (__builtin_fabsq (a
), __float128
);
31 HAS_TYPE (__builtin_copysignq (a
, a
), __float128
);