diff --git a/libcxx/test/libcxx/transitive_includes.sh.cpp b/libcxx/test/libcxx/transitive_includes.sh.cpp new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes.sh.cpp @@ -0,0 +1,760 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// Test that we don't remove transitive includes of public headers in the library accidentally. +// When we remove a transitive public include, clients tend to break because they don't +// always properly include what they use. +// +// This is not meant to block libc++ from removing unused transitive includes +// forever, however we do try to group removals for a couple of releases +// to avoid breaking users at every release. + +// This test doesn't support being run when some headers are not available, since we +// would need to add significant complexity to make that work. +// UNSUPPORTED: no-localization, no-threads, no-wide-characters, no-filesystem + +// This test only supports being run with the latest Standard, otherwise we'd +// have to support various versions of the test. +// UNSUPPORTED: c++03, c++11, c++14, c++17, c++20 + +// This test uses --trace-includes, which is only supported by Clang. +// REQUIRES: clang + +// Prevent from generating deprecated warnings for this test. +#if defined(__DEPRECATED) +# undef __DEPRECATED +#endif + +/* +BEGIN-SCRIPT + +import re +for i, header in enumerate(public_headers): + normalized_header = re.sub('/', '_', header) + trace_includes = "%{{cxx}} %s %{{flags}} %{{compile_flags}} --trace-includes -fsyntax-only -DTEST_{} 2>&1".format(i) + grep = "grep --only-matching -E 'c\+\+/v[0-9]+/({})'".format('|'.join(re.escape(h) for h in public_headers)) + sed = "sed -E 's&c\+\+/v[0-9]+/&&'" + RUN = "RUN" + # To re-generate the list of expected headers, temporarily re-generate this file by taking + # the 'else' branch and run this test. + if True: + print(f"// {RUN}: {trace_includes} | {grep} | {sed} | sort | uniq > %t.actual.{normalized_header}") + print(f"// {RUN}: diff %S/transitive_includes/expected.{normalized_header} %t.actual.{normalized_header}") + else: + print(f"// {RUN}: {trace_includes} | {grep} | {sed} | sort | uniq > %S/transitive_includes/expected.{normalized_header}") + + print("#if defined(TEST_{})".format(i)) + print("#include <{}>".format(header)) + print("#endif") + +END-SCRIPT +*/ + +// DO NOT MANUALLY EDIT ANYTHING BETWEEN THE MARKERS BELOW +// GENERATED-MARKER +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_0 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.algorithm +// RUN: diff %S/transitive_includes/expected.algorithm %t.actual.algorithm +#if defined(TEST_0) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_1 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.any +// RUN: diff %S/transitive_includes/expected.any %t.actual.any +#if defined(TEST_1) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_2 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.array +// RUN: diff %S/transitive_includes/expected.array %t.actual.array +#if defined(TEST_2) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_3 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.atomic +// RUN: diff %S/transitive_includes/expected.atomic %t.actual.atomic +#if defined(TEST_3) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_4 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.barrier +// RUN: diff %S/transitive_includes/expected.barrier %t.actual.barrier +#if defined(TEST_4) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_5 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.bit +// RUN: diff %S/transitive_includes/expected.bit %t.actual.bit +#if defined(TEST_5) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_6 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.bitset +// RUN: diff %S/transitive_includes/expected.bitset %t.actual.bitset +#if defined(TEST_6) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_7 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cassert +// RUN: diff %S/transitive_includes/expected.cassert %t.actual.cassert +#if defined(TEST_7) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_8 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.ccomplex +// RUN: diff %S/transitive_includes/expected.ccomplex %t.actual.ccomplex +#if defined(TEST_8) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_9 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cctype +// RUN: diff %S/transitive_includes/expected.cctype %t.actual.cctype +#if defined(TEST_9) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_10 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cerrno +// RUN: diff %S/transitive_includes/expected.cerrno %t.actual.cerrno +#if defined(TEST_10) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_11 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cfenv +// RUN: diff %S/transitive_includes/expected.cfenv %t.actual.cfenv +#if defined(TEST_11) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_12 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cfloat +// RUN: diff %S/transitive_includes/expected.cfloat %t.actual.cfloat +#if defined(TEST_12) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_13 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.charconv +// RUN: diff %S/transitive_includes/expected.charconv %t.actual.charconv +#if defined(TEST_13) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_14 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.chrono +// RUN: diff %S/transitive_includes/expected.chrono %t.actual.chrono +#if defined(TEST_14) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_15 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cinttypes +// RUN: diff %S/transitive_includes/expected.cinttypes %t.actual.cinttypes +#if defined(TEST_15) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_16 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.ciso646 +// RUN: diff %S/transitive_includes/expected.ciso646 %t.actual.ciso646 +#if defined(TEST_16) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_17 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.climits +// RUN: diff %S/transitive_includes/expected.climits %t.actual.climits +#if defined(TEST_17) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_18 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.clocale +// RUN: diff %S/transitive_includes/expected.clocale %t.actual.clocale +#if defined(TEST_18) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_19 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cmath +// RUN: diff %S/transitive_includes/expected.cmath %t.actual.cmath +#if defined(TEST_19) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_20 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.codecvt +// RUN: diff %S/transitive_includes/expected.codecvt %t.actual.codecvt +#if defined(TEST_20) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_21 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.compare +// RUN: diff %S/transitive_includes/expected.compare %t.actual.compare +#if defined(TEST_21) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_22 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.complex +// RUN: diff %S/transitive_includes/expected.complex %t.actual.complex +#if defined(TEST_22) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_23 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.complex.h +// RUN: diff %S/transitive_includes/expected.complex.h %t.actual.complex.h +#if defined(TEST_23) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_24 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.concepts +// RUN: diff %S/transitive_includes/expected.concepts %t.actual.concepts +#if defined(TEST_24) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_25 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.condition_variable +// RUN: diff %S/transitive_includes/expected.condition_variable %t.actual.condition_variable +#if defined(TEST_25) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_26 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.coroutine +// RUN: diff %S/transitive_includes/expected.coroutine %t.actual.coroutine +#if defined(TEST_26) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_27 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.csetjmp +// RUN: diff %S/transitive_includes/expected.csetjmp %t.actual.csetjmp +#if defined(TEST_27) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_28 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.csignal +// RUN: diff %S/transitive_includes/expected.csignal %t.actual.csignal +#if defined(TEST_28) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_29 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cstdarg +// RUN: diff %S/transitive_includes/expected.cstdarg %t.actual.cstdarg +#if defined(TEST_29) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_30 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cstdbool +// RUN: diff %S/transitive_includes/expected.cstdbool %t.actual.cstdbool +#if defined(TEST_30) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_31 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cstddef +// RUN: diff %S/transitive_includes/expected.cstddef %t.actual.cstddef +#if defined(TEST_31) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_32 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cstdint +// RUN: diff %S/transitive_includes/expected.cstdint %t.actual.cstdint +#if defined(TEST_32) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_33 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cstdio +// RUN: diff %S/transitive_includes/expected.cstdio %t.actual.cstdio +#if defined(TEST_33) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_34 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cstdlib +// RUN: diff %S/transitive_includes/expected.cstdlib %t.actual.cstdlib +#if defined(TEST_34) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_35 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cstring +// RUN: diff %S/transitive_includes/expected.cstring %t.actual.cstring +#if defined(TEST_35) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_36 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.ctgmath +// RUN: diff %S/transitive_includes/expected.ctgmath %t.actual.ctgmath +#if defined(TEST_36) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_37 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.ctime +// RUN: diff %S/transitive_includes/expected.ctime %t.actual.ctime +#if defined(TEST_37) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_38 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.ctype.h +// RUN: diff %S/transitive_includes/expected.ctype.h %t.actual.ctype.h +#if defined(TEST_38) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_39 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cuchar +// RUN: diff %S/transitive_includes/expected.cuchar %t.actual.cuchar +#if defined(TEST_39) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_40 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cwchar +// RUN: diff %S/transitive_includes/expected.cwchar %t.actual.cwchar +#if defined(TEST_40) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_41 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.cwctype +// RUN: diff %S/transitive_includes/expected.cwctype %t.actual.cwctype +#if defined(TEST_41) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_42 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.deque +// RUN: diff %S/transitive_includes/expected.deque %t.actual.deque +#if defined(TEST_42) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_43 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.errno.h +// RUN: diff %S/transitive_includes/expected.errno.h %t.actual.errno.h +#if defined(TEST_43) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_44 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.exception +// RUN: diff %S/transitive_includes/expected.exception %t.actual.exception +#if defined(TEST_44) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_45 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.execution +// RUN: diff %S/transitive_includes/expected.execution %t.actual.execution +#if defined(TEST_45) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_46 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.fenv.h +// RUN: diff %S/transitive_includes/expected.fenv.h %t.actual.fenv.h +#if defined(TEST_46) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_47 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.filesystem +// RUN: diff %S/transitive_includes/expected.filesystem %t.actual.filesystem +#if defined(TEST_47) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_48 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.float.h +// RUN: diff %S/transitive_includes/expected.float.h %t.actual.float.h +#if defined(TEST_48) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_49 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.format +// RUN: diff %S/transitive_includes/expected.format %t.actual.format +#if defined(TEST_49) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_50 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.forward_list +// RUN: diff %S/transitive_includes/expected.forward_list %t.actual.forward_list +#if defined(TEST_50) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_51 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.fstream +// RUN: diff %S/transitive_includes/expected.fstream %t.actual.fstream +#if defined(TEST_51) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_52 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.functional +// RUN: diff %S/transitive_includes/expected.functional %t.actual.functional +#if defined(TEST_52) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_53 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.future +// RUN: diff %S/transitive_includes/expected.future %t.actual.future +#if defined(TEST_53) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_54 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.initializer_list +// RUN: diff %S/transitive_includes/expected.initializer_list %t.actual.initializer_list +#if defined(TEST_54) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_55 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.inttypes.h +// RUN: diff %S/transitive_includes/expected.inttypes.h %t.actual.inttypes.h +#if defined(TEST_55) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_56 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.iomanip +// RUN: diff %S/transitive_includes/expected.iomanip %t.actual.iomanip +#if defined(TEST_56) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_57 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.ios +// RUN: diff %S/transitive_includes/expected.ios %t.actual.ios +#if defined(TEST_57) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_58 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.iosfwd +// RUN: diff %S/transitive_includes/expected.iosfwd %t.actual.iosfwd +#if defined(TEST_58) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_59 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.iostream +// RUN: diff %S/transitive_includes/expected.iostream %t.actual.iostream +#if defined(TEST_59) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_60 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.istream +// RUN: diff %S/transitive_includes/expected.istream %t.actual.istream +#if defined(TEST_60) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_61 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.iterator +// RUN: diff %S/transitive_includes/expected.iterator %t.actual.iterator +#if defined(TEST_61) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_62 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.latch +// RUN: diff %S/transitive_includes/expected.latch %t.actual.latch +#if defined(TEST_62) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_63 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.limits +// RUN: diff %S/transitive_includes/expected.limits %t.actual.limits +#if defined(TEST_63) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_64 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.limits.h +// RUN: diff %S/transitive_includes/expected.limits.h %t.actual.limits.h +#if defined(TEST_64) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_65 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.list +// RUN: diff %S/transitive_includes/expected.list %t.actual.list +#if defined(TEST_65) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_66 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.locale +// RUN: diff %S/transitive_includes/expected.locale %t.actual.locale +#if defined(TEST_66) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_67 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.locale.h +// RUN: diff %S/transitive_includes/expected.locale.h %t.actual.locale.h +#if defined(TEST_67) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_68 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.map +// RUN: diff %S/transitive_includes/expected.map %t.actual.map +#if defined(TEST_68) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_69 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.math.h +// RUN: diff %S/transitive_includes/expected.math.h %t.actual.math.h +#if defined(TEST_69) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_70 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.memory +// RUN: diff %S/transitive_includes/expected.memory %t.actual.memory +#if defined(TEST_70) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_71 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.mutex +// RUN: diff %S/transitive_includes/expected.mutex %t.actual.mutex +#if defined(TEST_71) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_72 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.new +// RUN: diff %S/transitive_includes/expected.new %t.actual.new +#if defined(TEST_72) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_73 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.numbers +// RUN: diff %S/transitive_includes/expected.numbers %t.actual.numbers +#if defined(TEST_73) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_74 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.numeric +// RUN: diff %S/transitive_includes/expected.numeric %t.actual.numeric +#if defined(TEST_74) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_75 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.optional +// RUN: diff %S/transitive_includes/expected.optional %t.actual.optional +#if defined(TEST_75) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_76 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.ostream +// RUN: diff %S/transitive_includes/expected.ostream %t.actual.ostream +#if defined(TEST_76) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_77 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.queue +// RUN: diff %S/transitive_includes/expected.queue %t.actual.queue +#if defined(TEST_77) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_78 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.random +// RUN: diff %S/transitive_includes/expected.random %t.actual.random +#if defined(TEST_78) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_79 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.ranges +// RUN: diff %S/transitive_includes/expected.ranges %t.actual.ranges +#if defined(TEST_79) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_80 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.ratio +// RUN: diff %S/transitive_includes/expected.ratio %t.actual.ratio +#if defined(TEST_80) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_81 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.regex +// RUN: diff %S/transitive_includes/expected.regex %t.actual.regex +#if defined(TEST_81) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_82 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.scoped_allocator +// RUN: diff %S/transitive_includes/expected.scoped_allocator %t.actual.scoped_allocator +#if defined(TEST_82) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_83 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.semaphore +// RUN: diff %S/transitive_includes/expected.semaphore %t.actual.semaphore +#if defined(TEST_83) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_84 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.set +// RUN: diff %S/transitive_includes/expected.set %t.actual.set +#if defined(TEST_84) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_85 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.setjmp.h +// RUN: diff %S/transitive_includes/expected.setjmp.h %t.actual.setjmp.h +#if defined(TEST_85) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_86 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.shared_mutex +// RUN: diff %S/transitive_includes/expected.shared_mutex %t.actual.shared_mutex +#if defined(TEST_86) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_87 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.span +// RUN: diff %S/transitive_includes/expected.span %t.actual.span +#if defined(TEST_87) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_88 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.sstream +// RUN: diff %S/transitive_includes/expected.sstream %t.actual.sstream +#if defined(TEST_88) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_89 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.stack +// RUN: diff %S/transitive_includes/expected.stack %t.actual.stack +#if defined(TEST_89) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_90 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.stdatomic.h +// RUN: diff %S/transitive_includes/expected.stdatomic.h %t.actual.stdatomic.h +#if defined(TEST_90) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_91 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.stdbool.h +// RUN: diff %S/transitive_includes/expected.stdbool.h %t.actual.stdbool.h +#if defined(TEST_91) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_92 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.stddef.h +// RUN: diff %S/transitive_includes/expected.stddef.h %t.actual.stddef.h +#if defined(TEST_92) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_93 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.stdexcept +// RUN: diff %S/transitive_includes/expected.stdexcept %t.actual.stdexcept +#if defined(TEST_93) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_94 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.stdint.h +// RUN: diff %S/transitive_includes/expected.stdint.h %t.actual.stdint.h +#if defined(TEST_94) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_95 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.stdio.h +// RUN: diff %S/transitive_includes/expected.stdio.h %t.actual.stdio.h +#if defined(TEST_95) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_96 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.stdlib.h +// RUN: diff %S/transitive_includes/expected.stdlib.h %t.actual.stdlib.h +#if defined(TEST_96) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_97 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.streambuf +// RUN: diff %S/transitive_includes/expected.streambuf %t.actual.streambuf +#if defined(TEST_97) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_98 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.string +// RUN: diff %S/transitive_includes/expected.string %t.actual.string +#if defined(TEST_98) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_99 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.string.h +// RUN: diff %S/transitive_includes/expected.string.h %t.actual.string.h +#if defined(TEST_99) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_100 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.string_view +// RUN: diff %S/transitive_includes/expected.string_view %t.actual.string_view +#if defined(TEST_100) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_101 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.strstream +// RUN: diff %S/transitive_includes/expected.strstream %t.actual.strstream +#if defined(TEST_101) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_102 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.system_error +// RUN: diff %S/transitive_includes/expected.system_error %t.actual.system_error +#if defined(TEST_102) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_103 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.tgmath.h +// RUN: diff %S/transitive_includes/expected.tgmath.h %t.actual.tgmath.h +#if defined(TEST_103) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_104 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.thread +// RUN: diff %S/transitive_includes/expected.thread %t.actual.thread +#if defined(TEST_104) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_105 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.tuple +// RUN: diff %S/transitive_includes/expected.tuple %t.actual.tuple +#if defined(TEST_105) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_106 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.type_traits +// RUN: diff %S/transitive_includes/expected.type_traits %t.actual.type_traits +#if defined(TEST_106) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_107 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.typeindex +// RUN: diff %S/transitive_includes/expected.typeindex %t.actual.typeindex +#if defined(TEST_107) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_108 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.typeinfo +// RUN: diff %S/transitive_includes/expected.typeinfo %t.actual.typeinfo +#if defined(TEST_108) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_109 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.uchar.h +// RUN: diff %S/transitive_includes/expected.uchar.h %t.actual.uchar.h +#if defined(TEST_109) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_110 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.unordered_map +// RUN: diff %S/transitive_includes/expected.unordered_map %t.actual.unordered_map +#if defined(TEST_110) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_111 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.unordered_set +// RUN: diff %S/transitive_includes/expected.unordered_set %t.actual.unordered_set +#if defined(TEST_111) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_112 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.utility +// RUN: diff %S/transitive_includes/expected.utility %t.actual.utility +#if defined(TEST_112) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_113 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.valarray +// RUN: diff %S/transitive_includes/expected.valarray %t.actual.valarray +#if defined(TEST_113) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_114 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.variant +// RUN: diff %S/transitive_includes/expected.variant %t.actual.variant +#if defined(TEST_114) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_115 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.vector +// RUN: diff %S/transitive_includes/expected.vector %t.actual.vector +#if defined(TEST_115) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_116 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.version +// RUN: diff %S/transitive_includes/expected.version %t.actual.version +#if defined(TEST_116) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_117 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.wchar.h +// RUN: diff %S/transitive_includes/expected.wchar.h %t.actual.wchar.h +#if defined(TEST_117) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_118 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.wctype.h +// RUN: diff %S/transitive_includes/expected.wctype.h %t.actual.wctype.h +#if defined(TEST_118) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_119 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_algorithm +// RUN: diff %S/transitive_includes/expected.experimental_algorithm %t.actual.experimental_algorithm +#if defined(TEST_119) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_120 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_coroutine +// RUN: diff %S/transitive_includes/expected.experimental_coroutine %t.actual.experimental_coroutine +#if defined(TEST_120) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_121 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_deque +// RUN: diff %S/transitive_includes/expected.experimental_deque %t.actual.experimental_deque +#if defined(TEST_121) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_122 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_forward_list +// RUN: diff %S/transitive_includes/expected.experimental_forward_list %t.actual.experimental_forward_list +#if defined(TEST_122) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_123 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_functional +// RUN: diff %S/transitive_includes/expected.experimental_functional %t.actual.experimental_functional +#if defined(TEST_123) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_124 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_iterator +// RUN: diff %S/transitive_includes/expected.experimental_iterator %t.actual.experimental_iterator +#if defined(TEST_124) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_125 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_list +// RUN: diff %S/transitive_includes/expected.experimental_list %t.actual.experimental_list +#if defined(TEST_125) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_126 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_map +// RUN: diff %S/transitive_includes/expected.experimental_map %t.actual.experimental_map +#if defined(TEST_126) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_127 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_memory_resource +// RUN: diff %S/transitive_includes/expected.experimental_memory_resource %t.actual.experimental_memory_resource +#if defined(TEST_127) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_128 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_propagate_const +// RUN: diff %S/transitive_includes/expected.experimental_propagate_const %t.actual.experimental_propagate_const +#if defined(TEST_128) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_129 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_regex +// RUN: diff %S/transitive_includes/expected.experimental_regex %t.actual.experimental_regex +#if defined(TEST_129) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_130 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_set +// RUN: diff %S/transitive_includes/expected.experimental_set %t.actual.experimental_set +#if defined(TEST_130) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_131 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_simd +// RUN: diff %S/transitive_includes/expected.experimental_simd %t.actual.experimental_simd +#if defined(TEST_131) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_132 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_string +// RUN: diff %S/transitive_includes/expected.experimental_string %t.actual.experimental_string +#if defined(TEST_132) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_133 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_type_traits +// RUN: diff %S/transitive_includes/expected.experimental_type_traits %t.actual.experimental_type_traits +#if defined(TEST_133) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_134 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_unordered_map +// RUN: diff %S/transitive_includes/expected.experimental_unordered_map %t.actual.experimental_unordered_map +#if defined(TEST_134) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_135 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_unordered_set +// RUN: diff %S/transitive_includes/expected.experimental_unordered_set %t.actual.experimental_unordered_set +#if defined(TEST_135) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_136 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_utility +// RUN: diff %S/transitive_includes/expected.experimental_utility %t.actual.experimental_utility +#if defined(TEST_136) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_137 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.experimental_vector +// RUN: diff %S/transitive_includes/expected.experimental_vector %t.actual.experimental_vector +#if defined(TEST_137) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_138 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.ext_hash_map +// RUN: diff %S/transitive_includes/expected.ext_hash_map %t.actual.ext_hash_map +#if defined(TEST_138) +#include +#endif +// RUN: %{cxx} %s %{flags} %{compile_flags} --trace-includes -fsyntax-only -DTEST_139 2>&1 | grep --only-matching -E 'c\+\+/v[0-9]+/(algorithm|any|array|atomic|barrier|bit|bitset|cassert|ccomplex|cctype|cerrno|cfenv|cfloat|charconv|chrono|cinttypes|ciso646|climits|clocale|cmath|codecvt|compare|complex|complex\.h|concepts|condition_variable|coroutine|csetjmp|csignal|cstdarg|cstdbool|cstddef|cstdint|cstdio|cstdlib|cstring|ctgmath|ctime|ctype\.h|cuchar|cwchar|cwctype|deque|errno\.h|exception|execution|fenv\.h|filesystem|float\.h|format|forward_list|fstream|functional|future|initializer_list|inttypes\.h|iomanip|ios|iosfwd|iostream|istream|iterator|latch|limits|limits\.h|list|locale|locale\.h|map|math\.h|memory|mutex|new|numbers|numeric|optional|ostream|queue|random|ranges|ratio|regex|scoped_allocator|semaphore|set|setjmp\.h|shared_mutex|span|sstream|stack|stdatomic\.h|stdbool\.h|stddef\.h|stdexcept|stdint\.h|stdio\.h|stdlib\.h|streambuf|string|string\.h|string_view|strstream|system_error|tgmath\.h|thread|tuple|type_traits|typeindex|typeinfo|uchar\.h|unordered_map|unordered_set|utility|valarray|variant|vector|version|wchar\.h|wctype\.h|experimental/algorithm|experimental/coroutine|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory_resource|experimental/propagate_const|experimental/regex|experimental/set|experimental/simd|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|ext/hash_map|ext/hash_set)' | sed -E 's&c\+\+/v[0-9]+/&&' | sort | uniq > %t.actual.ext_hash_set +// RUN: diff %S/transitive_includes/expected.ext_hash_set %t.actual.ext_hash_set +#if defined(TEST_139) +#include +#endif +// GENERATED-MARKER diff --git a/libcxx/test/libcxx/transitive_includes/expected.algorithm b/libcxx/test/libcxx/transitive_includes/expected.algorithm new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.algorithm @@ -0,0 +1,34 @@ +algorithm +atomic +bit +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.any b/libcxx/test/libcxx/transitive_includes/expected.any new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.any @@ -0,0 +1,33 @@ +any +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.array b/libcxx/test/libcxx/transitive_includes/expected.array new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.array @@ -0,0 +1,21 @@ +array +cmath +compare +concepts +cstddef +cstdint +cstdlib +ctype.h +exception +initializer_list +iosfwd +limits +math.h +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +type_traits +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.atomic b/libcxx/test/libcxx/transitive_includes/expected.atomic new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.atomic @@ -0,0 +1,19 @@ +atomic +climits +cstddef +cstdint +cstring +ctime +ctype.h +errno.h +iosfwd +limits +limits.h +ratio +stddef.h +stdint.h +stdio.h +string.h +type_traits +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.barrier b/libcxx/test/libcxx/transitive_includes/expected.barrier new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.barrier @@ -0,0 +1,33 @@ +atomic +barrier +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.bit b/libcxx/test/libcxx/transitive_includes/expected.bit new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.bit @@ -0,0 +1,10 @@ +bit +cstddef +cstdint +cstdlib +limits +stddef.h +stdint.h +stdlib.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.bitset b/libcxx/test/libcxx/transitive_includes/expected.bitset new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.bitset @@ -0,0 +1,40 @@ +atomic +bitset +cctype +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.cassert b/libcxx/test/libcxx/transitive_includes/expected.cassert new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cassert @@ -0,0 +1,3 @@ +cassert +stdint.h +stdlib.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.ccomplex b/libcxx/test/libcxx/transitive_includes/expected.ccomplex new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.ccomplex @@ -0,0 +1,52 @@ +atomic +bitset +ccomplex +cctype +cerrno +climits +cmath +compare +complex +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +ios +iosfwd +istream +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +ostream +ratio +sstream +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.cctype b/libcxx/test/libcxx/transitive_includes/expected.cctype new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cctype @@ -0,0 +1,2 @@ +cctype +ctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.cerrno b/libcxx/test/libcxx/transitive_includes/expected.cerrno new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cerrno @@ -0,0 +1,2 @@ +cerrno +errno.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.cfenv b/libcxx/test/libcxx/transitive_includes/expected.cfenv new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cfenv @@ -0,0 +1,2 @@ +cfenv +fenv.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.cfloat b/libcxx/test/libcxx/transitive_includes/expected.cfloat new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cfloat @@ -0,0 +1,2 @@ +cfloat +float.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.charconv b/libcxx/test/libcxx/transitive_includes/expected.charconv new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.charconv @@ -0,0 +1,16 @@ +cerrno +charconv +cmath +cstddef +cstdint +cstdlib +cstring +errno.h +limits +math.h +stddef.h +stdint.h +stdlib.h +string.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.chrono b/libcxx/test/libcxx/transitive_includes/expected.chrono new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.chrono @@ -0,0 +1,16 @@ +chrono +climits +cmath +compare +cstddef +cstdint +ctime +limits +limits.h +math.h +ratio +stddef.h +stdint.h +stdlib.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.cinttypes b/libcxx/test/libcxx/transitive_includes/expected.cinttypes new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cinttypes @@ -0,0 +1,4 @@ +cinttypes +cstdint +inttypes.h +stdint.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.ciso646 b/libcxx/test/libcxx/transitive_includes/expected.ciso646 new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.ciso646 @@ -0,0 +1 @@ +ciso646 diff --git a/libcxx/test/libcxx/transitive_includes/expected.climits b/libcxx/test/libcxx/transitive_includes/expected.climits new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.climits @@ -0,0 +1,2 @@ +climits +limits.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.clocale b/libcxx/test/libcxx/transitive_includes/expected.clocale new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.clocale @@ -0,0 +1,2 @@ +clocale +locale.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.cmath b/libcxx/test/libcxx/transitive_includes/expected.cmath new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cmath @@ -0,0 +1,9 @@ +cmath +cstddef +limits +math.h +stddef.h +stdint.h +stdlib.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.codecvt b/libcxx/test/libcxx/transitive_includes/expected.codecvt new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.codecvt @@ -0,0 +1,44 @@ +atomic +cctype +cerrno +climits +cmath +codecvt +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +iosfwd +limits +limits.h +locale.h +math.h +memory +mutex +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.compare b/libcxx/test/libcxx/transitive_includes/expected.compare new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.compare @@ -0,0 +1,11 @@ +cmath +compare +cstddef +cstdint +limits +math.h +stddef.h +stdint.h +stdlib.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.complex b/libcxx/test/libcxx/transitive_includes/expected.complex new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.complex @@ -0,0 +1,51 @@ +atomic +bitset +cctype +cerrno +climits +cmath +compare +complex +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +ios +iosfwd +istream +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +ostream +ratio +sstream +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.complex.h b/libcxx/test/libcxx/transitive_includes/expected.complex.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.complex.h @@ -0,0 +1,53 @@ +atomic +bitset +ccomplex +cctype +cerrno +climits +cmath +compare +complex +complex.h +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +ios +iosfwd +istream +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +ostream +ratio +sstream +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.concepts b/libcxx/test/libcxx/transitive_includes/expected.concepts new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.concepts @@ -0,0 +1,5 @@ +concepts +cstddef +stddef.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.condition_variable b/libcxx/test/libcxx/transitive_includes/expected.condition_variable new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.condition_variable @@ -0,0 +1,42 @@ +atomic +cctype +cerrno +climits +cmath +compare +concepts +condition_variable +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.coroutine b/libcxx/test/libcxx/transitive_includes/expected.coroutine new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.coroutine @@ -0,0 +1,14 @@ +cmath +compare +coroutine +cstddef +cstdint +cstring +limits +math.h +stddef.h +stdint.h +stdlib.h +string.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.csetjmp b/libcxx/test/libcxx/transitive_includes/expected.csetjmp new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.csetjmp @@ -0,0 +1,2 @@ +csetjmp +setjmp.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.csignal b/libcxx/test/libcxx/transitive_includes/expected.csignal new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.csignal @@ -0,0 +1 @@ +csignal diff --git a/libcxx/test/libcxx/transitive_includes/expected.cstdarg b/libcxx/test/libcxx/transitive_includes/expected.cstdarg new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cstdarg @@ -0,0 +1 @@ +cstdarg diff --git a/libcxx/test/libcxx/transitive_includes/expected.cstdbool b/libcxx/test/libcxx/transitive_includes/expected.cstdbool new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cstdbool @@ -0,0 +1 @@ +cstdbool diff --git a/libcxx/test/libcxx/transitive_includes/expected.cstddef b/libcxx/test/libcxx/transitive_includes/expected.cstddef new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cstddef @@ -0,0 +1,3 @@ +cstddef +stddef.h +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.cstdint b/libcxx/test/libcxx/transitive_includes/expected.cstdint new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cstdint @@ -0,0 +1,2 @@ +cstdint +stdint.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.cstdio b/libcxx/test/libcxx/transitive_includes/expected.cstdio new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cstdio @@ -0,0 +1,2 @@ +cstdio +stdio.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.cstdlib b/libcxx/test/libcxx/transitive_includes/expected.cstdlib new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cstdlib @@ -0,0 +1,3 @@ +cstdlib +stdint.h +stdlib.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.cstring b/libcxx/test/libcxx/transitive_includes/expected.cstring new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cstring @@ -0,0 +1,2 @@ +cstring +string.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.ctgmath b/libcxx/test/libcxx/transitive_includes/expected.ctgmath new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.ctgmath @@ -0,0 +1,53 @@ +atomic +bitset +ccomplex +cctype +cerrno +climits +cmath +compare +complex +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctgmath +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +ios +iosfwd +istream +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +ostream +ratio +sstream +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.ctime b/libcxx/test/libcxx/transitive_includes/expected.ctime new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.ctime @@ -0,0 +1 @@ +ctime diff --git a/libcxx/test/libcxx/transitive_includes/expected.ctype.h b/libcxx/test/libcxx/transitive_includes/expected.ctype.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.ctype.h @@ -0,0 +1 @@ +ctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.cuchar b/libcxx/test/libcxx/transitive_includes/expected.cuchar new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cuchar @@ -0,0 +1,3 @@ +cuchar +stddef.h +uchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.cwchar b/libcxx/test/libcxx/transitive_includes/expected.cwchar new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cwchar @@ -0,0 +1,8 @@ +cctype +ctype.h +cwchar +cwctype +stddef.h +stdio.h +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.cwctype b/libcxx/test/libcxx/transitive_includes/expected.cwctype new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.cwctype @@ -0,0 +1,4 @@ +cctype +ctype.h +cwctype +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.deque b/libcxx/test/libcxx/transitive_includes/expected.deque new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.deque @@ -0,0 +1,33 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +deque +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.errno.h b/libcxx/test/libcxx/transitive_includes/expected.errno.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.errno.h @@ -0,0 +1 @@ +errno.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.exception b/libcxx/test/libcxx/transitive_includes/expected.exception new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.exception @@ -0,0 +1,8 @@ +cstddef +cstdlib +exception +stddef.h +stdint.h +stdlib.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.execution b/libcxx/test/libcxx/transitive_includes/expected.execution new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.execution @@ -0,0 +1,2 @@ +execution +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_algorithm b/libcxx/test/libcxx/transitive_includes/expected.experimental_algorithm new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_algorithm @@ -0,0 +1,35 @@ +algorithm +atomic +bit +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +experimental/algorithm +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_coroutine b/libcxx/test/libcxx/transitive_includes/expected.experimental_coroutine new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_coroutine @@ -0,0 +1,33 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +experimental/coroutine +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_deque b/libcxx/test/libcxx/transitive_includes/expected.experimental_deque new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_deque @@ -0,0 +1,37 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +deque +errno.h +exception +experimental/deque +experimental/memory_resource +experimental/utility +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +utility +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_forward_list b/libcxx/test/libcxx/transitive_includes/expected.experimental_forward_list new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_forward_list @@ -0,0 +1,37 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +experimental/forward_list +experimental/memory_resource +experimental/utility +forward_list +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +utility +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_functional b/libcxx/test/libcxx/transitive_includes/expected.experimental_functional new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_functional @@ -0,0 +1,38 @@ +array +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +experimental/functional +functional +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +optional +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +unordered_map +vector +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_iterator b/libcxx/test/libcxx/transitive_includes/expected.experimental_iterator new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_iterator @@ -0,0 +1,26 @@ +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctype.h +exception +experimental/iterator +initializer_list +iosfwd +iterator +limits +math.h +new +stddef.h +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +variant +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_list b/libcxx/test/libcxx/transitive_includes/expected.experimental_list new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_list @@ -0,0 +1,37 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +experimental/list +experimental/memory_resource +experimental/utility +initializer_list +iosfwd +limits +limits.h +list +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +utility +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_map b/libcxx/test/libcxx/transitive_includes/expected.experimental_map new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_map @@ -0,0 +1,38 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +experimental/map +experimental/memory_resource +experimental/utility +initializer_list +iosfwd +limits +limits.h +map +math.h +memory +new +optional +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +utility +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_memory_resource b/libcxx/test/libcxx/transitive_includes/expected.experimental_memory_resource new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_memory_resource @@ -0,0 +1,35 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +experimental/memory_resource +experimental/utility +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +utility +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_propagate_const b/libcxx/test/libcxx/transitive_includes/expected.experimental_propagate_const new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_propagate_const @@ -0,0 +1,5 @@ +cstddef +experimental/propagate_const +stddef.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_regex b/libcxx/test/libcxx/transitive_includes/expected.experimental_regex new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_regex @@ -0,0 +1,51 @@ +atomic +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +deque +errno.h +exception +experimental/memory_resource +experimental/regex +experimental/string +experimental/utility +initializer_list +iosfwd +limits +limits.h +locale.h +math.h +memory +mutex +new +ratio +regex +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +utility +vector +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_set b/libcxx/test/libcxx/transitive_includes/expected.experimental_set new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_set @@ -0,0 +1,38 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +experimental/memory_resource +experimental/set +experimental/utility +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +optional +ratio +set +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +utility +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_simd b/libcxx/test/libcxx/transitive_includes/expected.experimental_simd new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_simd @@ -0,0 +1,23 @@ +array +cmath +compare +concepts +cstddef +cstdint +cstdlib +ctype.h +exception +experimental/simd +initializer_list +iosfwd +limits +math.h +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +tuple +type_traits +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_string b/libcxx/test/libcxx/transitive_includes/expected.experimental_string new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_string @@ -0,0 +1,43 @@ +atomic +cctype +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +experimental/memory_resource +experimental/string +experimental/utility +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +tuple +type_traits +typeinfo +utility +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_type_traits b/libcxx/test/libcxx/transitive_includes/expected.experimental_type_traits new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_type_traits @@ -0,0 +1,6 @@ +cstddef +experimental/type_traits +initializer_list +stddef.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_unordered_map b/libcxx/test/libcxx/transitive_includes/expected.experimental_unordered_map new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_unordered_map @@ -0,0 +1,38 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +experimental/memory_resource +experimental/unordered_map +experimental/utility +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +optional +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +unordered_map +utility +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_unordered_set b/libcxx/test/libcxx/transitive_includes/expected.experimental_unordered_set new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_unordered_set @@ -0,0 +1,38 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +experimental/memory_resource +experimental/unordered_set +experimental/utility +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +optional +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +unordered_set +utility +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_utility b/libcxx/test/libcxx/transitive_includes/expected.experimental_utility new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_utility @@ -0,0 +1,15 @@ +cmath +compare +cstddef +cstdint +cstdlib +experimental/utility +initializer_list +limits +math.h +stddef.h +stdint.h +stdlib.h +type_traits +utility +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.experimental_vector b/libcxx/test/libcxx/transitive_includes/expected.experimental_vector new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.experimental_vector @@ -0,0 +1,37 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +experimental/memory_resource +experimental/utility +experimental/vector +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +utility +vector +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.ext_hash_map b/libcxx/test/libcxx/transitive_includes/expected.ext_hash_map new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.ext_hash_map @@ -0,0 +1,47 @@ +algorithm +array +atomic +bit +cctype +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +ext/hash_map +functional +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +optional +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +tuple +type_traits +typeinfo +unordered_map +vector +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.ext_hash_set b/libcxx/test/libcxx/transitive_includes/expected.ext_hash_set new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.ext_hash_set @@ -0,0 +1,47 @@ +algorithm +array +atomic +bit +cctype +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +ext/hash_set +functional +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +optional +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +tuple +type_traits +typeinfo +unordered_map +vector +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.fenv.h b/libcxx/test/libcxx/transitive_includes/expected.fenv.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.fenv.h @@ -0,0 +1 @@ +fenv.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.filesystem b/libcxx/test/libcxx/transitive_includes/expected.filesystem new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.filesystem @@ -0,0 +1,51 @@ +atomic +bitset +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +filesystem +initializer_list +iomanip +ios +iosfwd +istream +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +ostream +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.float.h b/libcxx/test/libcxx/transitive_includes/expected.float.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.float.h @@ -0,0 +1 @@ +float.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.format b/libcxx/test/libcxx/transitive_includes/expected.format new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.format @@ -0,0 +1,51 @@ +array +atomic +bit +cctype +cerrno +charconv +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +format +initializer_list +ios +iosfwd +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +optional +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.forward_list b/libcxx/test/libcxx/transitive_includes/expected.forward_list new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.forward_list @@ -0,0 +1,33 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +forward_list +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.fstream b/libcxx/test/libcxx/transitive_includes/expected.fstream new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.fstream @@ -0,0 +1,52 @@ +atomic +bitset +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +filesystem +fstream +initializer_list +iomanip +ios +iosfwd +istream +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +ostream +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.functional b/libcxx/test/libcxx/transitive_includes/expected.functional new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.functional @@ -0,0 +1,37 @@ +array +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +functional +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +optional +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +unordered_map +vector +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.future b/libcxx/test/libcxx/transitive_includes/expected.future new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.future @@ -0,0 +1,44 @@ +atomic +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +future +initializer_list +iosfwd +limits +limits.h +math.h +memory +mutex +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +system_error +thread +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.initializer_list b/libcxx/test/libcxx/transitive_includes/expected.initializer_list new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.initializer_list @@ -0,0 +1,4 @@ +cstddef +initializer_list +stddef.h +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.inttypes.h b/libcxx/test/libcxx/transitive_includes/expected.inttypes.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.inttypes.h @@ -0,0 +1,2 @@ +inttypes.h +stdint.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.iomanip b/libcxx/test/libcxx/transitive_includes/expected.iomanip new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.iomanip @@ -0,0 +1,50 @@ +atomic +bitset +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +iomanip +ios +iosfwd +istream +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +ostream +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.ios b/libcxx/test/libcxx/transitive_includes/expected.ios new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.ios @@ -0,0 +1,44 @@ +atomic +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +ios +iosfwd +limits +limits.h +locale.h +math.h +memory +mutex +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.iosfwd b/libcxx/test/libcxx/transitive_includes/expected.iosfwd new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.iosfwd @@ -0,0 +1,6 @@ +ctype.h +iosfwd +stddef.h +stdio.h +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.iostream b/libcxx/test/libcxx/transitive_includes/expected.iostream new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.iostream @@ -0,0 +1,50 @@ +atomic +bitset +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +ios +iosfwd +iostream +istream +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +ostream +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.istream b/libcxx/test/libcxx/transitive_includes/expected.istream new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.istream @@ -0,0 +1,49 @@ +atomic +bitset +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +ios +iosfwd +istream +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +ostream +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.iterator b/libcxx/test/libcxx/transitive_includes/expected.iterator new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.iterator @@ -0,0 +1,25 @@ +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctype.h +exception +initializer_list +iosfwd +iterator +limits +math.h +new +stddef.h +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +variant +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.latch b/libcxx/test/libcxx/transitive_includes/expected.latch new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.latch @@ -0,0 +1,20 @@ +atomic +climits +cstddef +cstdint +cstring +ctime +ctype.h +errno.h +iosfwd +latch +limits +limits.h +ratio +stddef.h +stdint.h +stdio.h +string.h +type_traits +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.limits b/libcxx/test/libcxx/transitive_includes/expected.limits new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.limits @@ -0,0 +1,5 @@ +cstddef +limits +stddef.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.limits.h b/libcxx/test/libcxx/transitive_includes/expected.limits.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.limits.h @@ -0,0 +1 @@ +limits.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.list b/libcxx/test/libcxx/transitive_includes/expected.list new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.list @@ -0,0 +1,33 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +initializer_list +iosfwd +limits +limits.h +list +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.locale b/libcxx/test/libcxx/transitive_includes/expected.locale new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.locale @@ -0,0 +1,46 @@ +atomic +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +ios +iosfwd +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.locale.h b/libcxx/test/libcxx/transitive_includes/expected.locale.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.locale.h @@ -0,0 +1 @@ +locale.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.map b/libcxx/test/libcxx/transitive_includes/expected.map new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.map @@ -0,0 +1,34 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +initializer_list +iosfwd +limits +limits.h +map +math.h +memory +new +optional +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.math.h b/libcxx/test/libcxx/transitive_includes/expected.math.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.math.h @@ -0,0 +1,8 @@ +cstddef +limits +math.h +stddef.h +stdint.h +stdlib.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.memory b/libcxx/test/libcxx/transitive_includes/expected.memory new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.memory @@ -0,0 +1,32 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.mutex b/libcxx/test/libcxx/transitive_includes/expected.mutex new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.mutex @@ -0,0 +1,42 @@ +atomic +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +mutex +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.new b/libcxx/test/libcxx/transitive_includes/expected.new new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.new @@ -0,0 +1,9 @@ +cstddef +cstdlib +exception +new +stddef.h +stdint.h +stdlib.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.numbers b/libcxx/test/libcxx/transitive_includes/expected.numbers new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.numbers @@ -0,0 +1,6 @@ +concepts +cstddef +numbers +stddef.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.numeric b/libcxx/test/libcxx/transitive_includes/expected.numeric new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.numeric @@ -0,0 +1,11 @@ +cmath +concepts +cstddef +limits +math.h +numeric +stddef.h +stdint.h +stdlib.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.optional b/libcxx/test/libcxx/transitive_includes/expected.optional new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.optional @@ -0,0 +1,23 @@ +cmath +compare +cstddef +cstdint +cstdlib +cstring +ctype.h +exception +initializer_list +iosfwd +limits +math.h +new +optional +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +type_traits +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.ostream b/libcxx/test/libcxx/transitive_includes/expected.ostream new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.ostream @@ -0,0 +1,48 @@ +atomic +bitset +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +ios +iosfwd +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +ostream +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.queue b/libcxx/test/libcxx/transitive_includes/expected.queue new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.queue @@ -0,0 +1,35 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +deque +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +queue +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +vector +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.random b/libcxx/test/libcxx/transitive_includes/expected.random new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.random @@ -0,0 +1,43 @@ +atomic +bit +cctype +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +numeric +random +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +tuple +type_traits +typeinfo +vector +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.ranges b/libcxx/test/libcxx/transitive_includes/expected.ranges new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.ranges @@ -0,0 +1,30 @@ +array +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctype.h +exception +initializer_list +iosfwd +iterator +limits +math.h +new +optional +ranges +span +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +variant +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.ratio b/libcxx/test/libcxx/transitive_includes/expected.ratio new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.ratio @@ -0,0 +1,9 @@ +climits +cstddef +cstdint +limits.h +ratio +stddef.h +stdint.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.regex b/libcxx/test/libcxx/transitive_includes/expected.regex new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.regex @@ -0,0 +1,46 @@ +atomic +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +deque +errno.h +exception +initializer_list +iosfwd +limits +limits.h +locale.h +math.h +memory +mutex +new +ratio +regex +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +vector +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.scoped_allocator b/libcxx/test/libcxx/transitive_includes/expected.scoped_allocator new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.scoped_allocator @@ -0,0 +1,33 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +scoped_allocator +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.semaphore b/libcxx/test/libcxx/transitive_includes/expected.semaphore new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.semaphore @@ -0,0 +1,20 @@ +atomic +climits +cstddef +cstdint +cstring +ctime +ctype.h +errno.h +iosfwd +limits +limits.h +ratio +semaphore +stddef.h +stdint.h +stdio.h +string.h +type_traits +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.set b/libcxx/test/libcxx/transitive_includes/expected.set new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.set @@ -0,0 +1,34 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +optional +ratio +set +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.setjmp.h b/libcxx/test/libcxx/transitive_includes/expected.setjmp.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.setjmp.h @@ -0,0 +1 @@ +setjmp.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.shared_mutex b/libcxx/test/libcxx/transitive_includes/expected.shared_mutex new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.shared_mutex @@ -0,0 +1,42 @@ +atomic +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +shared_mutex +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.span b/libcxx/test/libcxx/transitive_includes/expected.span new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.span @@ -0,0 +1,22 @@ +array +cmath +compare +concepts +cstddef +cstdint +cstdlib +ctype.h +exception +initializer_list +iosfwd +limits +math.h +span +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +type_traits +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.sstream b/libcxx/test/libcxx/transitive_includes/expected.sstream new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.sstream @@ -0,0 +1,50 @@ +atomic +bitset +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +ios +iosfwd +istream +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +ostream +ratio +sstream +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.stack b/libcxx/test/libcxx/transitive_includes/expected.stack new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.stack @@ -0,0 +1,34 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +deque +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stack +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.stdatomic.h b/libcxx/test/libcxx/transitive_includes/expected.stdatomic.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.stdatomic.h @@ -0,0 +1,20 @@ +atomic +climits +cstddef +cstdint +cstring +ctime +ctype.h +errno.h +iosfwd +limits +limits.h +ratio +stdatomic.h +stddef.h +stdint.h +stdio.h +string.h +type_traits +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.stdbool.h b/libcxx/test/libcxx/transitive_includes/expected.stdbool.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.stdbool.h @@ -0,0 +1 @@ +stdbool.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.stddef.h b/libcxx/test/libcxx/transitive_includes/expected.stddef.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.stddef.h @@ -0,0 +1 @@ +stddef.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.stdexcept b/libcxx/test/libcxx/transitive_includes/expected.stdexcept new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.stdexcept @@ -0,0 +1,13 @@ +cstddef +cstdlib +ctype.h +exception +iosfwd +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +type_traits +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.stdint.h b/libcxx/test/libcxx/transitive_includes/expected.stdint.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.stdint.h @@ -0,0 +1 @@ +stdint.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.stdio.h b/libcxx/test/libcxx/transitive_includes/expected.stdio.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.stdio.h @@ -0,0 +1 @@ +stdio.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.stdlib.h b/libcxx/test/libcxx/transitive_includes/expected.stdlib.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.stdlib.h @@ -0,0 +1,2 @@ +stdint.h +stdlib.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.streambuf b/libcxx/test/libcxx/transitive_includes/expected.streambuf new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.streambuf @@ -0,0 +1,45 @@ +atomic +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +ios +iosfwd +limits +limits.h +locale.h +math.h +memory +mutex +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.string b/libcxx/test/libcxx/transitive_includes/expected.string new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.string @@ -0,0 +1,39 @@ +atomic +cctype +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.string.h b/libcxx/test/libcxx/transitive_includes/expected.string.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.string.h @@ -0,0 +1 @@ +string.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.string_view b/libcxx/test/libcxx/transitive_includes/expected.string_view new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.string_view @@ -0,0 +1,28 @@ +cctype +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctype.h +cwchar +cwctype +exception +initializer_list +iosfwd +limits +math.h +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +string_view +type_traits +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.strstream b/libcxx/test/libcxx/transitive_includes/expected.strstream new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.strstream @@ -0,0 +1,50 @@ +atomic +bitset +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +ios +iosfwd +istream +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +ostream +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +strstream +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.system_error b/libcxx/test/libcxx/transitive_includes/expected.system_error new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.system_error @@ -0,0 +1,41 @@ +atomic +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +system_error +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.tgmath.h b/libcxx/test/libcxx/transitive_includes/expected.tgmath.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.tgmath.h @@ -0,0 +1,54 @@ +atomic +bitset +ccomplex +cctype +cerrno +climits +cmath +compare +complex +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctgmath +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +ios +iosfwd +istream +limits +limits.h +locale +locale.h +math.h +memory +mutex +new +ostream +ratio +sstream +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +streambuf +string +string.h +string_view +system_error +tgmath.h +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.thread b/libcxx/test/libcxx/transitive_includes/expected.thread new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.thread @@ -0,0 +1,42 @@ +atomic +cctype +cerrno +climits +cmath +compare +concepts +cstddef +cstdint +cstdio +cstdlib +cstring +ctime +ctype.h +cwchar +cwctype +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string +string.h +string_view +system_error +thread +tuple +type_traits +typeinfo +version +wchar.h +wctype.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.tuple b/libcxx/test/libcxx/transitive_includes/expected.tuple new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.tuple @@ -0,0 +1,12 @@ +cmath +compare +cstddef +cstdint +limits +math.h +stddef.h +stdint.h +stdlib.h +tuple +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.type_traits b/libcxx/test/libcxx/transitive_includes/expected.type_traits new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.type_traits @@ -0,0 +1,4 @@ +cstddef +stddef.h +type_traits +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.typeindex b/libcxx/test/libcxx/transitive_includes/expected.typeindex new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.typeindex @@ -0,0 +1,15 @@ +cmath +compare +cstddef +cstdint +cstdlib +exception +limits +math.h +stddef.h +stdint.h +stdlib.h +type_traits +typeindex +typeinfo +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.typeinfo b/libcxx/test/libcxx/transitive_includes/expected.typeinfo new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.typeinfo @@ -0,0 +1,10 @@ +cstddef +cstdint +cstdlib +exception +stddef.h +stdint.h +stdlib.h +type_traits +typeinfo +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.uchar.h b/libcxx/test/libcxx/transitive_includes/expected.uchar.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.uchar.h @@ -0,0 +1,2 @@ +stddef.h +uchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.unordered_map b/libcxx/test/libcxx/transitive_includes/expected.unordered_map new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.unordered_map @@ -0,0 +1,34 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +optional +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +unordered_map +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.unordered_set b/libcxx/test/libcxx/transitive_includes/expected.unordered_set new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.unordered_set @@ -0,0 +1,34 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +optional +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +unordered_set +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.utility b/libcxx/test/libcxx/transitive_includes/expected.utility new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.utility @@ -0,0 +1,14 @@ +cmath +compare +cstddef +cstdint +cstdlib +initializer_list +limits +math.h +stddef.h +stdint.h +stdlib.h +type_traits +utility +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.valarray b/libcxx/test/libcxx/transitive_includes/expected.valarray new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.valarray @@ -0,0 +1,22 @@ +cmath +concepts +cstddef +cstdlib +cstring +ctype.h +exception +initializer_list +iosfwd +limits +math.h +new +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +type_traits +valarray +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.variant b/libcxx/test/libcxx/transitive_includes/expected.variant new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.variant @@ -0,0 +1,19 @@ +cmath +compare +cstddef +cstdint +cstdlib +cstring +exception +initializer_list +limits +math.h +new +stddef.h +stdint.h +stdlib.h +string.h +tuple +type_traits +variant +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.vector b/libcxx/test/libcxx/transitive_includes/expected.vector new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.vector @@ -0,0 +1,33 @@ +atomic +climits +cmath +compare +concepts +cstddef +cstdint +cstdlib +cstring +ctime +ctype.h +errno.h +exception +initializer_list +iosfwd +limits +limits.h +math.h +memory +new +ratio +stddef.h +stdexcept +stdint.h +stdio.h +stdlib.h +string.h +tuple +type_traits +typeinfo +vector +version +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.version b/libcxx/test/libcxx/transitive_includes/expected.version new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.version @@ -0,0 +1 @@ +version diff --git a/libcxx/test/libcxx/transitive_includes/expected.wchar.h b/libcxx/test/libcxx/transitive_includes/expected.wchar.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.wchar.h @@ -0,0 +1,4 @@ +ctype.h +stddef.h +stdio.h +wchar.h diff --git a/libcxx/test/libcxx/transitive_includes/expected.wctype.h b/libcxx/test/libcxx/transitive_includes/expected.wctype.h new file mode 100644 --- /dev/null +++ b/libcxx/test/libcxx/transitive_includes/expected.wctype.h @@ -0,0 +1,2 @@ +ctype.h +wctype.h diff --git a/libcxx/utils/generate_header_tests.py b/libcxx/utils/generate_header_tests.py --- a/libcxx/utils/generate_header_tests.py +++ b/libcxx/utils/generate_header_tests.py @@ -144,6 +144,7 @@ produce(test.joinpath('libcxx/nasty_macros.compile.pass.cpp'), variables) produce(test.joinpath('libcxx/no_assert_include.compile.pass.cpp'), variables) produce(test.joinpath('libcxx/private_headers.verify.cpp'), variables) + produce(test.joinpath('libcxx/transitive_includes.sh.cpp'), variables) if __name__ == '__main__':