@@ -38,48 +38,6 @@ _LIBCPP_NODISCARD inline
38
38
return __builtin_signbit (__x);
39
39
}
40
40
41
- _LIBCPP_NODISCARD inline _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI
42
- #ifdef _LIBCPP_PREFERRED_OVERLOAD
43
- _LIBCPP_PREFERRED_OVERLOAD
44
- #endif
45
- bool
46
- signbit (float __x) _NOEXCEPT {
47
- // TODO(LLVM 22): Remove `__builtin_copysign`-workaround once support for Clang 19 is dropped.
48
- #if !__has_constexpr_builtin(__builtin_signbit) && _LIBCPP_STD_VER >= 23
49
- return __builtin_copysign (1.0 , __x) == -1.0 ;
50
- #else
51
- return __builtin_signbit (__x);
52
- #endif
53
- }
54
-
55
- _LIBCPP_NODISCARD inline _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI
56
- #ifdef _LIBCPP_PREFERRED_OVERLOAD
57
- _LIBCPP_PREFERRED_OVERLOAD
58
- #endif
59
- bool
60
- signbit (double __x) _NOEXCEPT {
61
- // TODO(LLVM 22): Remove `__builtin_copysign`-workaround once support for Clang 19 is dropped.
62
- #if !__has_constexpr_builtin(__builtin_signbit) && _LIBCPP_STD_VER >= 23
63
- return __builtin_copysign (1.0 , __x) == -1.0 ;
64
- #else
65
- return __builtin_signbit (__x);
66
- #endif
67
- }
68
-
69
- _LIBCPP_NODISCARD inline _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI
70
- #ifdef _LIBCPP_PREFERRED_OVERLOAD
71
- _LIBCPP_PREFERRED_OVERLOAD
72
- #endif
73
- bool
74
- signbit (long double __x) _NOEXCEPT {
75
- // TODO(LLVM 22): Remove `__builtin_copysign`-workaround once support for Clang 19 is dropped.
76
- #if !__has_constexpr_builtin(__builtin_signbit) && _LIBCPP_STD_VER >= 23
77
- return __builtin_copysign (1.0 , __x) == -1.0 ;
78
- #else
79
- return __builtin_signbit (__x);
80
- #endif
81
- }
82
-
83
41
template <class _A1 , __enable_if_t <is_integral<_A1>::value && is_signed<_A1>::value, int > = 0 >
84
42
_LIBCPP_NODISCARD inline _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI bool signbit (_A1 __x) _NOEXCEPT {
85
43
return __x < 0 ;
0 commit comments