1*0a6a1f1dSLionel Sambuc // -*- C++ -*- 2*0a6a1f1dSLionel Sambuc //===----------------------------------------------------------------------===// 3*0a6a1f1dSLionel Sambuc // 4*0a6a1f1dSLionel Sambuc // The LLVM Compiler Infrastructure 5*0a6a1f1dSLionel Sambuc // 6*0a6a1f1dSLionel Sambuc // This file is dual licensed under the MIT and the University of Illinois Open 7*0a6a1f1dSLionel Sambuc // Source Licenses. See LICENSE.TXT for details. 8*0a6a1f1dSLionel Sambuc // 9*0a6a1f1dSLionel Sambuc //===----------------------------------------------------------------------===// 10*0a6a1f1dSLionel Sambuc 11*0a6a1f1dSLionel Sambuc // Test that we can include each header in two TU's and link them together. 12*0a6a1f1dSLionel Sambuc 13*0a6a1f1dSLionel Sambuc // RUN: %cxx -c %s -o %t.first.o %flags %compile_flags 14*0a6a1f1dSLionel Sambuc // RUN: %cxx -c %s -o %t.second.o -DWITH_MAIN %flags %compile_flags 15*0a6a1f1dSLionel Sambuc // RUN: %cxx -o %t.exe %t.first.o %t.second.o %flags %link_flags 16*0a6a1f1dSLionel Sambuc // RUN: %run 17*0a6a1f1dSLionel Sambuc 18*0a6a1f1dSLionel Sambuc #include <algorithm> 19*0a6a1f1dSLionel Sambuc #include <array> 20*0a6a1f1dSLionel Sambuc #include <bitset> 21*0a6a1f1dSLionel Sambuc #include <cassert> 22*0a6a1f1dSLionel Sambuc #include <ccomplex> 23*0a6a1f1dSLionel Sambuc #include <cctype> 24*0a6a1f1dSLionel Sambuc #include <cerrno> 25*0a6a1f1dSLionel Sambuc #include <cfenv> 26*0a6a1f1dSLionel Sambuc #include <cfloat> 27*0a6a1f1dSLionel Sambuc #include <chrono> 28*0a6a1f1dSLionel Sambuc #include <cinttypes> 29*0a6a1f1dSLionel Sambuc #include <ciso646> 30*0a6a1f1dSLionel Sambuc #include <climits> 31*0a6a1f1dSLionel Sambuc #include <clocale> 32*0a6a1f1dSLionel Sambuc #include <cmath> 33*0a6a1f1dSLionel Sambuc #include <codecvt> 34*0a6a1f1dSLionel Sambuc #include <complex> 35*0a6a1f1dSLionel Sambuc #include <complex.h> 36*0a6a1f1dSLionel Sambuc #include <condition_variable> 37*0a6a1f1dSLionel Sambuc #include <csetjmp> 38*0a6a1f1dSLionel Sambuc #include <csignal> 39*0a6a1f1dSLionel Sambuc #include <cstdarg> 40*0a6a1f1dSLionel Sambuc #include <cstdbool> 41*0a6a1f1dSLionel Sambuc #include <cstddef> 42*0a6a1f1dSLionel Sambuc #include <cstdint> 43*0a6a1f1dSLionel Sambuc #include <cstdio> 44*0a6a1f1dSLionel Sambuc #include <cstdlib> 45*0a6a1f1dSLionel Sambuc #include <cstring> 46*0a6a1f1dSLionel Sambuc #include <ctgmath> 47*0a6a1f1dSLionel Sambuc #include <ctime> 48*0a6a1f1dSLionel Sambuc #include <cwchar> 49*0a6a1f1dSLionel Sambuc #include <cwctype> 50*0a6a1f1dSLionel Sambuc #include <deque> 51*0a6a1f1dSLionel Sambuc #include <exception> 52*0a6a1f1dSLionel Sambuc #include <experimental/algorithm> 53*0a6a1f1dSLionel Sambuc #include <experimental/chrono> 54*0a6a1f1dSLionel Sambuc #include <experimental/dynarray> 55*0a6a1f1dSLionel Sambuc #include <experimental/optional> 56*0a6a1f1dSLionel Sambuc #include <experimental/string_view> 57*0a6a1f1dSLionel Sambuc #include <experimental/system_error> 58*0a6a1f1dSLionel Sambuc #include <experimental/type_traits> 59*0a6a1f1dSLionel Sambuc #include <experimental/utility> 60*0a6a1f1dSLionel Sambuc #include <ext/hash_map> 61*0a6a1f1dSLionel Sambuc #include <ext/hash_set> 62*0a6a1f1dSLionel Sambuc #include <forward_list> 63*0a6a1f1dSLionel Sambuc #include <fstream> 64*0a6a1f1dSLionel Sambuc #include <functional> 65*0a6a1f1dSLionel Sambuc #include <initializer_list> 66*0a6a1f1dSLionel Sambuc #include <iomanip> 67*0a6a1f1dSLionel Sambuc #include <ios> 68*0a6a1f1dSLionel Sambuc #include <iosfwd> 69*0a6a1f1dSLionel Sambuc #include <iostream> 70*0a6a1f1dSLionel Sambuc #include <istream> 71*0a6a1f1dSLionel Sambuc #include <iterator> 72*0a6a1f1dSLionel Sambuc #include <limits> 73*0a6a1f1dSLionel Sambuc #include <list> 74*0a6a1f1dSLionel Sambuc #include <locale> 75*0a6a1f1dSLionel Sambuc #include <map> 76*0a6a1f1dSLionel Sambuc #include <memory> 77*0a6a1f1dSLionel Sambuc #include <new> 78*0a6a1f1dSLionel Sambuc #include <numeric> 79*0a6a1f1dSLionel Sambuc #include <ostream> 80*0a6a1f1dSLionel Sambuc #include <queue> 81*0a6a1f1dSLionel Sambuc #include <random> 82*0a6a1f1dSLionel Sambuc #include <ratio> 83*0a6a1f1dSLionel Sambuc #include <regex> 84*0a6a1f1dSLionel Sambuc #include <scoped_allocator> 85*0a6a1f1dSLionel Sambuc #include <set> 86*0a6a1f1dSLionel Sambuc #include <sstream> 87*0a6a1f1dSLionel Sambuc #include <stack> 88*0a6a1f1dSLionel Sambuc #include <stdexcept> 89*0a6a1f1dSLionel Sambuc #include <streambuf> 90*0a6a1f1dSLionel Sambuc #include <string> 91*0a6a1f1dSLionel Sambuc #include <strstream> 92*0a6a1f1dSLionel Sambuc #include <system_error> 93*0a6a1f1dSLionel Sambuc #include <tgmath.h> 94*0a6a1f1dSLionel Sambuc #include <tuple> 95*0a6a1f1dSLionel Sambuc #include <typeindex> 96*0a6a1f1dSLionel Sambuc #include <typeinfo> 97*0a6a1f1dSLionel Sambuc #include <type_traits> 98*0a6a1f1dSLionel Sambuc #include <unordered_map> 99*0a6a1f1dSLionel Sambuc #include <unordered_set> 100*0a6a1f1dSLionel Sambuc #include <utility> 101*0a6a1f1dSLionel Sambuc #include <valarray> 102*0a6a1f1dSLionel Sambuc #include <vector> 103*0a6a1f1dSLionel Sambuc 104*0a6a1f1dSLionel Sambuc #ifndef _LIBCPP_HAS_NO_THREADS 105*0a6a1f1dSLionel Sambuc #include <atomic> 106*0a6a1f1dSLionel Sambuc #include <future> 107*0a6a1f1dSLionel Sambuc #include <mutex> 108*0a6a1f1dSLionel Sambuc #include <shared_mutex> 109*0a6a1f1dSLionel Sambuc #include <thread> 110*0a6a1f1dSLionel Sambuc #endif 111*0a6a1f1dSLionel Sambuc 112*0a6a1f1dSLionel Sambuc #if defined(WITH_MAIN) main()113*0a6a1f1dSLionel Sambucint main() {} 114*0a6a1f1dSLionel Sambuc #endif 115