1//===----------------------------------------------------------------------===//
2//
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
6//
7//===----------------------------------------------------------------------===//
8//
9// WARNING: This test was generated by generate_feature_test_macro_components.py
10// and should not be edited manually.
11//
12// clang-format off
13
14// <bitset>
15
16// Test the feature test macros defined by <bitset>
17
18/* Constant Value
19 __cpp_lib_bitset 202306L [C++26]
20 __cpp_lib_constexpr_bitset 202207L [C++23]
21*/
22
23#include <bitset>
24#include "test_macros.h"
25
26#if TEST_STD_VER < 14
27
28# ifdef __cpp_lib_bitset
29# error "__cpp_lib_bitset should not be defined before c++26"
30# endif
31
32# ifdef __cpp_lib_constexpr_bitset
33# error "__cpp_lib_constexpr_bitset should not be defined before c++23"
34# endif
35
36#elif TEST_STD_VER == 14
37
38# ifdef __cpp_lib_bitset
39# error "__cpp_lib_bitset should not be defined before c++26"
40# endif
41
42# ifdef __cpp_lib_constexpr_bitset
43# error "__cpp_lib_constexpr_bitset should not be defined before c++23"
44# endif
45
46#elif TEST_STD_VER == 17
47
48# ifdef __cpp_lib_bitset
49# error "__cpp_lib_bitset should not be defined before c++26"
50# endif
51
52# ifdef __cpp_lib_constexpr_bitset
53# error "__cpp_lib_constexpr_bitset should not be defined before c++23"
54# endif
55
56#elif TEST_STD_VER == 20
57
58# ifdef __cpp_lib_bitset
59# error "__cpp_lib_bitset should not be defined before c++26"
60# endif
61
62# ifdef __cpp_lib_constexpr_bitset
63# error "__cpp_lib_constexpr_bitset should not be defined before c++23"
64# endif
65
66#elif TEST_STD_VER == 23
67
68# ifdef __cpp_lib_bitset
69# error "__cpp_lib_bitset should not be defined before c++26"
70# endif
71
72# ifndef __cpp_lib_constexpr_bitset
73# error "__cpp_lib_constexpr_bitset should be defined in c++23"
74# endif
75# if __cpp_lib_constexpr_bitset != 202207L
76# error "__cpp_lib_constexpr_bitset should have the value 202207L in c++23"
77# endif
78
79#elif TEST_STD_VER > 23
80
81# ifndef __cpp_lib_bitset
82# error "__cpp_lib_bitset should be defined in c++26"
83# endif
84# if __cpp_lib_bitset != 202306L
85# error "__cpp_lib_bitset should have the value 202306L in c++26"
86# endif
87
88# ifndef __cpp_lib_constexpr_bitset
89# error "__cpp_lib_constexpr_bitset should be defined in c++26"
90# endif
91# if __cpp_lib_constexpr_bitset != 202207L
92# error "__cpp_lib_constexpr_bitset should have the value 202207L in c++26"
93# endif
94
95#endif // TEST_STD_VER > 23
96
97

source code of libcxx/test/std/language.support/support.limits/support.limits.general/bitset.version.compile.pass.cpp