1 //===----------------------------------------------------------------------===//
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
16 #include "test_macros.h"
18 template <class T
, int expected
>
22 static_assert(std::numeric_limits
<T
>::radix
== expected
, "radix test 1");
23 static_assert(std::numeric_limits
<const T
>::radix
== expected
, "radix test 2");
24 static_assert(std::numeric_limits
<volatile T
>::radix
== expected
, "radix test 3");
25 static_assert(std::numeric_limits
<const volatile T
>::radix
== expected
, "radix test 4");
32 test
<signed char, 2>();
33 test
<unsigned char, 2>();
35 #if TEST_STD_VER > 17 && defined(__cpp_char8_t)
41 test
<unsigned short, 2>();
43 test
<unsigned int, 2>();
45 test
<unsigned long, 2>();
47 test
<unsigned long long, 2>();
48 #ifndef TEST_HAS_NO_INT128
49 test
<__int128_t
, 2>();
50 test
<__uint128_t
, 2>();
52 test
<float, FLT_RADIX
>();
53 test
<double, FLT_RADIX
>();
54 test
<long double, FLT_RADIX
>();