1
2 //===----------------------------------------------------------------------===//
3 //
4 // The LLVM Compiler Infrastructure
5 //
6 // This file is dual licensed under the MIT and the University of Illinois Open
7 // Source Licenses. See LICENSE.TXT for details.
8 //
9 //===----------------------------------------------------------------------===//
10 //
11 // <locale> feature macros
12
13 /* Constant Value
14 __cpp_lib_char8_t 201811L
15
16 */
17
18 #include <locale>
19 #include <cassert>
20 #include "test_macros.h"
21
main()22 int main()
23 {
24 // ensure that the macros that are supposed to be defined in <locale> are defined.
25
26 #if TEST_STD_VER > 17 && defined(__cpp_char8_t)
27 # if !defined(__cpp_lib_char8_t)
28 LIBCPP_STATIC_ASSERT(false, "__cpp_lib_char8_t is not defined");
29 # else
30 # if __cpp_lib_char8_t < 201811L
31 # error "__cpp_lib_char8_t has an invalid value"
32 # endif
33 # endif
34 #endif
35
36 /*
37 #if !defined(__cpp_lib_fooby)
38 # error "__cpp_lib_fooby is not defined"
39 #elif __cpp_lib_fooby < 201606L
40 # error "__cpp_lib_fooby has an invalid value"
41 #endif
42 */
43 }
44