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 // <ostream> feature macros
12 
13 /*  Constant                                    Value
14     __cpp_lib_char8_t                           201811L
15 
16 */
17 
18 #include <ostream>
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 <ostream> 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