• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // -*- C++ -*-
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 // Test that we can include each header in two TU's and link them together.
12 
13 // RUN: %cxx -c %s -o %t.first.o %flags %compile_flags
14 // RUN: %cxx -c %s -o %t.second.o -DWITH_MAIN %flags %compile_flags
15 // RUN: %cxx -o %t.exe %t.first.o %t.second.o %flags %link_flags
16 // RUN: %run
17 
18 // Prevent <ext/hash_map> from generating deprecated warnings for this test.
19 #if defined(__DEPRECATED)
20 #undef __DEPRECATED
21 #endif
22 
23 // Top level headers
24 #include <algorithm>
25 #include <any>
26 #include <array>
27 #ifndef _LIBCPP_HAS_NO_THREADS
28 #include <atomic>
29 #endif
30 #include <bit>
31 #include <bitset>
32 #include <cassert>
33 #include <ccomplex>
34 #include <cctype>
35 #include <cerrno>
36 #include <cfenv>
37 #include <cfloat>
38 #include <charconv>
39 #include <chrono>
40 #include <cinttypes>
41 #include <ciso646>
42 #include <climits>
43 #include <clocale>
44 #include <cmath>
45 #include <codecvt>
46 #include <compare>
47 #include <complex>
48 #include <complex.h>
49 #include <condition_variable>
50 #include <csetjmp>
51 #include <csignal>
52 #include <cstdarg>
53 #include <cstdbool>
54 #include <cstddef>
55 #include <cstdint>
56 #include <cstdio>
57 #include <cstdlib>
58 #include <cstring>
59 #include <ctgmath>
60 #include <ctime>
61 #include <ctype.h>
62 #include <cwchar>
63 #include <cwctype>
64 #include <deque>
65 #include <errno.h>
66 #include <exception>
67 #include <filesystem>
68 #include <float.h>
69 #include <forward_list>
70 #include <fstream>
71 #include <functional>
72 #ifndef _LIBCPP_HAS_NO_THREADS
73 #include <future>
74 #endif
75 #include <initializer_list>
76 #include <inttypes.h>
77 #include <iomanip>
78 #include <ios>
79 #include <iosfwd>
80 #include <iostream>
81 #include <istream>
82 #include <iterator>
83 #include <limits>
84 #include <limits.h>
85 #include <list>
86 #include <locale>
87 #include <locale.h>
88 #include <map>
89 #include <math.h>
90 #include <memory>
91 #ifndef _LIBCPP_HAS_NO_THREADS
92 #include <mutex>
93 #endif
94 #include <new>
95 #include <numeric>
96 #include <optional>
97 #include <ostream>
98 #include <queue>
99 #include <random>
100 #include <ratio>
101 #include <regex>
102 #include <scoped_allocator>
103 #include <set>
104 #include <setjmp.h>
105 #ifndef _LIBCPP_HAS_NO_THREADS
106 #include <shared_mutex>
107 #endif
108 #include <span>
109 #include <sstream>
110 #include <stack>
111 #include <stdbool.h>
112 #include <stddef.h>
113 #include <stdexcept>
114 #include <stdint.h>
115 #include <stdio.h>
116 #include <stdlib.h>
117 #include <streambuf>
118 #include <string>
119 #include <string.h>
120 #include <string_view>
121 #include <strstream>
122 #include <system_error>
123 #include <tgmath.h>
124 #ifndef _LIBCPP_HAS_NO_THREADS
125 #include <thread>
126 #endif
127 #include <tuple>
128 #include <typeindex>
129 #include <typeinfo>
130 #include <type_traits>
131 #include <unordered_map>
132 #include <unordered_set>
133 #include <utility>
134 #include <valarray>
135 #include <variant>
136 #include <vector>
137 #include <version>
138 #include <wchar.h>
139 #include <wctype.h>
140 
141 // experimental headers
142 #if __cplusplus >= 201103L
143 #include <experimental/algorithm>
144 #if defined(__cpp_coroutines)
145 #include <experimental/coroutine>
146 #endif
147 #include <experimental/deque>
148 #include <experimental/filesystem>
149 #include <experimental/forward_list>
150 #include <experimental/functional>
151 #include <experimental/iterator>
152 #include <experimental/list>
153 #include <experimental/map>
154 #include <experimental/memory_resource>
155 #include <experimental/propagate_const>
156 #include <experimental/regex>
157 #include <experimental/simd>
158 #include <experimental/set>
159 #include <experimental/string>
160 #include <experimental/type_traits>
161 #include <experimental/unordered_map>
162 #include <experimental/unordered_set>
163 #include <experimental/utility>
164 #include <experimental/vector>
165 #endif // __cplusplus >= 201103L
166 
167 // extended headers
168 #include <ext/hash_map>
169 #include <ext/hash_set>
170 
171 #if defined(WITH_MAIN)
main()172 int main() {}
173 #endif
174