2 //===----------------------------------------------------------------------===//
4 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5 // See https://llvm.org/LICENSE.txt for license information.
6 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
8 //===----------------------------------------------------------------------===//
10 // WARNING, this entire header is generated by
11 // utils/generate_libcxx_cppm_in.py
18 // The headers of Table 24: C++ library headers [tab:headers.cpp]
19 // and the headers of Table 25: C++ headers for C library facilities [tab:headers.cpp.c]
27 #if !defined(_LIBCPP_HAS_NO_LOCALIZATION)
41 #if !defined(_LIBCPP_HAS_NO_WIDE_CHARACTERS)
44 #if !defined(_LIBCPP_HAS_NO_WIDE_CHARACTERS)
48 // *** Headers not yet available ***
50 // This validation is mainly to catch when a new header is added but adding the
51 // corresponding .inc file is forgotten. However, the check based on __has_include
52 // alone doesn't work on Windows because the Windows SDK is on the include path,
53 // and that means the MSVC STL headers can be found as well, tricking __has_include
54 // into thinking that libc++ provides the header.
57 # if __has_include(<debugging>)
58 # error "please update the header information for <debugging> in headers_not_available in utils/libcxx/header_information.py"
59 # endif // __has_include(<debugging>)
60 # if __has_include(<flat_map>)
61 # error "please update the header information for <flat_map> in headers_not_available in utils/libcxx/header_information.py"
62 # endif // __has_include(<flat_map>)
63 # if __has_include(<flat_set>)
64 # error "please update the header information for <flat_set> in headers_not_available in utils/libcxx/header_information.py"
65 # endif // __has_include(<flat_set>)
66 # if __has_include(<generator>)
67 # error "please update the header information for <generator> in headers_not_available in utils/libcxx/header_information.py"
68 # endif // __has_include(<generator>)
69 # if __has_include(<hazard_pointer>)
70 # error "please update the header information for <hazard_pointer> in headers_not_available in utils/libcxx/header_information.py"
71 # endif // __has_include(<hazard_pointer>)
72 # if __has_include(<inplace_vector>)
73 # error "please update the header information for <inplace_vector> in headers_not_available in utils/libcxx/header_information.py"
74 # endif // __has_include(<inplace_vector>)
75 # if __has_include(<linalg>)
76 # error "please update the header information for <linalg> in headers_not_available in utils/libcxx/header_information.py"
77 # endif // __has_include(<linalg>)
78 # if __has_include(<rcu>)
79 # error "please update the header information for <rcu> in headers_not_available in utils/libcxx/header_information.py"
80 # endif // __has_include(<rcu>)
81 # if __has_include(<spanstream>)
82 # error "please update the header information for <spanstream> in headers_not_available in utils/libcxx/header_information.py"
83 # endif // __has_include(<spanstream>)
84 # if __has_include(<stacktrace>)
85 # error "please update the header information for <stacktrace> in headers_not_available in utils/libcxx/header_information.py"
86 # endif // __has_include(<stacktrace>)
87 # if __has_include(<stdfloat>)
88 # error "please update the header information for <stdfloat> in headers_not_available in utils/libcxx/header_information.py"
89 # endif // __has_include(<stdfloat>)
90 # if __has_include(<text_encoding>)
91 # error "please update the header information for <text_encoding> in headers_not_available in utils/libcxx/header_information.py"
92 # endif // __has_include(<text_encoding>)
95 export module std.compat;
99 @LIBCXX_MODULE_STD_COMPAT_INCLUDE_SOURCES@