| 2664 | |
| 2665 | template <typename T, FMT_ENABLE_IF(is_floating_point<T>::value)> |
| 2666 | FMT_INLINE FMT_CONSTEXPR auto signbit(T value) -> bool { |
| 2667 | if (is_constant_evaluated()) { |
| 2668 | #ifdef __cpp_if_constexpr |
| 2669 | if constexpr (std::numeric_limits<double>::is_iec559) { |
| 2670 | auto bits = detail::bit_cast<uint64_t>(static_cast<double>(value)); |
| 2671 | return (bits >> (num_bits<uint64_t>() - 1)) != 0; |
| 2672 | } |
| 2673 | #endif |
| 2674 | } |
| 2675 | return std::signbit(static_cast<double>(value)); |
| 2676 | } |
| 2677 | |
| 2678 | inline FMT_CONSTEXPR20 void adjust_precision(int& precision, int exp10) { |
| 2679 | // Adjust fixed precision by exponent because it is relative to decimal |
nothing calls this directly
no test coverage detected