https://github.com/philnik777 created https://github.com/llvm/llvm-project/pull/144110
Quite a few of the frozen header tests only fail because the include path is incorrect due to copying the headers. This patch fixes the tests where that's the only problem. This is part of https://discourse.llvm.org/t/rfc-freezing-c-03-headers-in-libc. >From 748f899d6b70933aa50f73bbe45ab198b8aacc38 Mon Sep 17 00:00:00 2001 From: Nikolas Klauser <nikolasklau...@berlin.de> Date: Fri, 13 Jun 2025 18:14:22 +0200 Subject: [PATCH] [libc++][C++03] Fix tests which only fail due to incorrect includes --- .../test/libcxx-03/algorithms/half_positive.pass.cpp | 4 +--- .../assertions/default_verbose_abort.pass.cpp | 4 +--- libcxx/test/libcxx-03/assertions/modes/none.pass.cpp | 4 +--- .../libcxx-03/assertions/single_expression.pass.cpp | 4 +--- .../associative/tree_balance_after_insert.pass.cpp | 4 +--- .../associative/tree_key_value_traits.pass.cpp | 4 +--- .../containers/associative/tree_left_rotate.pass.cpp | 4 +--- .../containers/associative/tree_remove.pass.cpp | 4 +--- .../containers/associative/tree_right_rotate.pass.cpp | 4 +--- .../containers/unord/key_value_traits.pass.cpp | 4 +--- .../libcxx-03/containers/unord/next_prime.pass.cpp | 4 +--- .../libcxx-03/depr/depr.c.headers/extern_c.pass.cpp | 4 +--- .../libcxx-03/iterators/aliasing_iterator.pass.cpp | 4 +--- .../iterators/bounded_iter/arithmetic.pass.cpp | 4 +--- .../iterators/bounded_iter/pointer_traits.pass.cpp | 4 +--- .../iterators/bounded_iter/types.compile.pass.cpp | 4 +--- libcxx/test/libcxx-03/memory/allocation_guard.pass.cpp | 4 +--- libcxx/test/libcxx-03/memory/swap_allocator.pass.cpp | 4 +--- .../test/libcxx-03/numerics/clamp_to_integral.pass.cpp | 4 +--- libcxx/test/libcxx-03/selftest/test_macros.pass.cpp | 4 +--- .../strings/c.strings/constexpr_memmove.pass.cpp | 4 +--- .../is_trivially_comparable.compile.pass.cpp | 8 +++----- .../is_trivially_relocatable.compile.pass.cpp | 4 +--- .../libcxx-03/utilities/exception_guard.odr.sh.cpp | 4 +--- .../libcxx-03/utilities/is_pointer_in_range.pass.cpp | 4 +--- .../test/libcxx-03/utilities/is_valid_range.pass.cpp | 4 +--- .../test/libcxx-03/utilities/meta/meta_base.pass.cpp | 10 ++++------ libcxx/test/libcxx-03/utilities/no_destroy.pass.cpp | 4 +--- .../utility/private_constructor_tag.compile.pass.cpp | 4 +--- 29 files changed, 34 insertions(+), 92 deletions(-) diff --git a/libcxx/test/libcxx-03/algorithms/half_positive.pass.cpp b/libcxx/test/libcxx-03/algorithms/half_positive.pass.cpp index 88a18e8592921..292fcf356554b 100644 --- a/libcxx/test/libcxx-03/algorithms/half_positive.pass.cpp +++ b/libcxx/test/libcxx-03/algorithms/half_positive.pass.cpp @@ -11,9 +11,7 @@ // __half_positive divides an integer number by 2 as unsigned number for known types. // It can be an important optimization for lower bound, for example. -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__algorithm/half_positive.h> +#include <__cxx03/__algorithm/half_positive.h> #include <cassert> #include <cstddef> #include <limits> diff --git a/libcxx/test/libcxx-03/assertions/default_verbose_abort.pass.cpp b/libcxx/test/libcxx-03/assertions/default_verbose_abort.pass.cpp index 803868b757794..27169da5e1c41 100644 --- a/libcxx/test/libcxx-03/assertions/default_verbose_abort.pass.cpp +++ b/libcxx/test/libcxx-03/assertions/default_verbose_abort.pass.cpp @@ -9,9 +9,7 @@ // Test that the default verbose termination function aborts the program. // XFAIL: availability-verbose_abort-missing -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__verbose_abort> +#include <__cxx03/__verbose_abort> #include <csignal> #include <cstdlib> diff --git a/libcxx/test/libcxx-03/assertions/modes/none.pass.cpp b/libcxx/test/libcxx-03/assertions/modes/none.pass.cpp index b64290a31a129..e79dee906ae69 100644 --- a/libcxx/test/libcxx-03/assertions/modes/none.pass.cpp +++ b/libcxx/test/libcxx-03/assertions/modes/none.pass.cpp @@ -11,9 +11,7 @@ // REQUIRES: libcpp-hardening-mode=none -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__assert> +#include <__cxx03/__assert> #include <cassert> bool executed_condition = false; diff --git a/libcxx/test/libcxx-03/assertions/single_expression.pass.cpp b/libcxx/test/libcxx-03/assertions/single_expression.pass.cpp index 474edc9dc0833..bbda6f11e4f6a 100644 --- a/libcxx/test/libcxx-03/assertions/single_expression.pass.cpp +++ b/libcxx/test/libcxx-03/assertions/single_expression.pass.cpp @@ -10,9 +10,7 @@ // This is useful so we can use them in places that require an expression, such as // in a constructor initializer list. -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__assert> +#include <__cxx03/__assert> #include <cassert> void f() { diff --git a/libcxx/test/libcxx-03/containers/associative/tree_balance_after_insert.pass.cpp b/libcxx/test/libcxx-03/containers/associative/tree_balance_after_insert.pass.cpp index ccd84af44c3a5..c1e7406169708 100644 --- a/libcxx/test/libcxx-03/containers/associative/tree_balance_after_insert.pass.cpp +++ b/libcxx/test/libcxx-03/containers/associative/tree_balance_after_insert.pass.cpp @@ -13,9 +13,7 @@ // void // __tree_balance_after_insert(_NodePtr __root, _NodePtr __x) -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__tree> +#include <__cxx03/__tree> #include <cassert> #include "test_macros.h" diff --git a/libcxx/test/libcxx-03/containers/associative/tree_key_value_traits.pass.cpp b/libcxx/test/libcxx-03/containers/associative/tree_key_value_traits.pass.cpp index 04dcb8f54fafc..630f5c8621407 100644 --- a/libcxx/test/libcxx-03/containers/associative/tree_key_value_traits.pass.cpp +++ b/libcxx/test/libcxx-03/containers/associative/tree_key_value_traits.pass.cpp @@ -6,9 +6,7 @@ // //===----------------------------------------------------------------------===// -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__tree> +#include <__cxx03/__tree> #include <map> #include <set> #include <type_traits> diff --git a/libcxx/test/libcxx-03/containers/associative/tree_left_rotate.pass.cpp b/libcxx/test/libcxx-03/containers/associative/tree_left_rotate.pass.cpp index d97a1c89f1f70..67edca72b7b4c 100644 --- a/libcxx/test/libcxx-03/containers/associative/tree_left_rotate.pass.cpp +++ b/libcxx/test/libcxx-03/containers/associative/tree_left_rotate.pass.cpp @@ -13,9 +13,7 @@ // void // __tree_left_rotate(_NodePtr __x); -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__tree> +#include <__cxx03/__tree> #include <cassert> #include "test_macros.h" diff --git a/libcxx/test/libcxx-03/containers/associative/tree_remove.pass.cpp b/libcxx/test/libcxx-03/containers/associative/tree_remove.pass.cpp index e543c3360a685..d4eae2c957630 100644 --- a/libcxx/test/libcxx-03/containers/associative/tree_remove.pass.cpp +++ b/libcxx/test/libcxx-03/containers/associative/tree_remove.pass.cpp @@ -13,9 +13,7 @@ // void // __tree_remove(_NodePtr __root, _NodePtr __z) -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__tree> +#include <__cxx03/__tree> #include <cassert> #include "test_macros.h" diff --git a/libcxx/test/libcxx-03/containers/associative/tree_right_rotate.pass.cpp b/libcxx/test/libcxx-03/containers/associative/tree_right_rotate.pass.cpp index b86446f5be101..19e9a8f464648 100644 --- a/libcxx/test/libcxx-03/containers/associative/tree_right_rotate.pass.cpp +++ b/libcxx/test/libcxx-03/containers/associative/tree_right_rotate.pass.cpp @@ -13,9 +13,7 @@ // void // __tree_right_rotate(_NodePtr __x); -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__tree> +#include <__cxx03/__tree> #include <cassert> #include "test_macros.h" diff --git a/libcxx/test/libcxx-03/containers/unord/key_value_traits.pass.cpp b/libcxx/test/libcxx-03/containers/unord/key_value_traits.pass.cpp index e00a028489a72..a117884791062 100644 --- a/libcxx/test/libcxx-03/containers/unord/key_value_traits.pass.cpp +++ b/libcxx/test/libcxx-03/containers/unord/key_value_traits.pass.cpp @@ -6,9 +6,7 @@ // //===----------------------------------------------------------------------===// -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__hash_table> +#include <__cxx03/__hash_table> #include <unordered_map> #include <unordered_set> #include <type_traits> diff --git a/libcxx/test/libcxx-03/containers/unord/next_prime.pass.cpp b/libcxx/test/libcxx-03/containers/unord/next_prime.pass.cpp index 44b0eb96e2b9b..3ca8d27d17a09 100644 --- a/libcxx/test/libcxx-03/containers/unord/next_prime.pass.cpp +++ b/libcxx/test/libcxx-03/containers/unord/next_prime.pass.cpp @@ -16,9 +16,7 @@ // If n == 0, return 0, else return the lowest prime greater than or equal to n -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__hash_table> +#include <__cxx03/__hash_table> #include <cassert> #include <cstddef> diff --git a/libcxx/test/libcxx-03/depr/depr.c.headers/extern_c.pass.cpp b/libcxx/test/libcxx-03/depr/depr.c.headers/extern_c.pass.cpp index f756aacbc1cd5..44f2844773466 100644 --- a/libcxx/test/libcxx-03/depr/depr.c.headers/extern_c.pass.cpp +++ b/libcxx/test/libcxx-03/depr/depr.c.headers/extern_c.pass.cpp @@ -10,13 +10,11 @@ // that we don't want to support and can't support with LSV enabled. // UNSUPPORTED: clang-modules-build -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - // Sometimes C++'s <foo.h> headers get included within extern "C" contexts. This // is ill-formed (no diagnostic required), per [using.headers]p3, but we permit // it as an extension. -#include <__config> +#include <__cxx03/__config> extern "C" { #include <assert.h> diff --git a/libcxx/test/libcxx-03/iterators/aliasing_iterator.pass.cpp b/libcxx/test/libcxx-03/iterators/aliasing_iterator.pass.cpp index 33774578e2337..d3bd7cc8618ef 100644 --- a/libcxx/test/libcxx-03/iterators/aliasing_iterator.pass.cpp +++ b/libcxx/test/libcxx-03/iterators/aliasing_iterator.pass.cpp @@ -8,9 +8,7 @@ // ADDITIONAL_COMPILE_FLAGS(clang): -Wprivate-header -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__iterator/aliasing_iterator.h> +#include <__cxx03/__iterator/aliasing_iterator.h> #include <cassert> struct NonTrivial { diff --git a/libcxx/test/libcxx-03/iterators/bounded_iter/arithmetic.pass.cpp b/libcxx/test/libcxx-03/iterators/bounded_iter/arithmetic.pass.cpp index 3fc735b441676..b4b6e7fa1940c 100644 --- a/libcxx/test/libcxx-03/iterators/bounded_iter/arithmetic.pass.cpp +++ b/libcxx/test/libcxx-03/iterators/bounded_iter/arithmetic.pass.cpp @@ -11,9 +11,7 @@ // // Arithmetic operators -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__iterator/bounded_iter.h> +#include <__cxx03/__iterator/bounded_iter.h> #include <cstddef> #include "test_iterators.h" diff --git a/libcxx/test/libcxx-03/iterators/bounded_iter/pointer_traits.pass.cpp b/libcxx/test/libcxx-03/iterators/bounded_iter/pointer_traits.pass.cpp index 22ad8c6706d6f..671e716d21e26 100644 --- a/libcxx/test/libcxx-03/iterators/bounded_iter/pointer_traits.pass.cpp +++ b/libcxx/test/libcxx-03/iterators/bounded_iter/pointer_traits.pass.cpp @@ -11,9 +11,7 @@ // // std::pointer_traits specialization -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__iterator/bounded_iter.h> +#include <__cxx03/__iterator/bounded_iter.h> #include <cassert> #include <cstddef> #include <memory> diff --git a/libcxx/test/libcxx-03/iterators/bounded_iter/types.compile.pass.cpp b/libcxx/test/libcxx-03/iterators/bounded_iter/types.compile.pass.cpp index d205c5b03ee3f..0d27dff0873b4 100644 --- a/libcxx/test/libcxx-03/iterators/bounded_iter/types.compile.pass.cpp +++ b/libcxx/test/libcxx-03/iterators/bounded_iter/types.compile.pass.cpp @@ -11,9 +11,7 @@ // // Nested types -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__iterator/bounded_iter.h> +#include <__cxx03/__iterator/bounded_iter.h> #include <cstddef> #include <iterator> #include <type_traits> diff --git a/libcxx/test/libcxx-03/memory/allocation_guard.pass.cpp b/libcxx/test/libcxx-03/memory/allocation_guard.pass.cpp index 20c05b381ef0e..5e71decdcabbd 100644 --- a/libcxx/test/libcxx-03/memory/allocation_guard.pass.cpp +++ b/libcxx/test/libcxx-03/memory/allocation_guard.pass.cpp @@ -12,12 +12,10 @@ // To allow checking that self-move works correctly. // ADDITIONAL_COMPILE_FLAGS: -Wno-self-move -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - // template<class _Alloc> // struct __allocation_guard; -#include <__memory/allocation_guard.h> +#include <__cxx03/__memory/allocation_guard.h> #include <cassert> #include <type_traits> #include <utility> diff --git a/libcxx/test/libcxx-03/memory/swap_allocator.pass.cpp b/libcxx/test/libcxx-03/memory/swap_allocator.pass.cpp index f70f8134d1dda..38dde7a1bf636 100644 --- a/libcxx/test/libcxx-03/memory/swap_allocator.pass.cpp +++ b/libcxx/test/libcxx-03/memory/swap_allocator.pass.cpp @@ -7,14 +7,12 @@ //===----------------------------------------------------------------------===// // -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - // <memory> // template <typename _Alloc> // void __swap_allocator(_Alloc& __a1, _Alloc& __a2); -#include <__memory/swap_allocator.h> +#include <__cxx03/__memory/swap_allocator.h> #include <cassert> #include <memory> #include <utility> diff --git a/libcxx/test/libcxx-03/numerics/clamp_to_integral.pass.cpp b/libcxx/test/libcxx-03/numerics/clamp_to_integral.pass.cpp index 68d55afa1f280..d8ac80d4d2fc4 100644 --- a/libcxx/test/libcxx-03/numerics/clamp_to_integral.pass.cpp +++ b/libcxx/test/libcxx-03/numerics/clamp_to_integral.pass.cpp @@ -12,9 +12,7 @@ // closest representable value for the specified integer type, or // numeric_limits<IntT>::max()/min() if the value isn't representable. -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__random/clamp_to_integral.h> +#include <__cxx03/__random/clamp_to_integral.h> #include <cassert> #include <cmath> #include <limits> diff --git a/libcxx/test/libcxx-03/selftest/test_macros.pass.cpp b/libcxx/test/libcxx-03/selftest/test_macros.pass.cpp index 9bcf7cf9a31f5..f083812377ad1 100644 --- a/libcxx/test/libcxx-03/selftest/test_macros.pass.cpp +++ b/libcxx/test/libcxx-03/selftest/test_macros.pass.cpp @@ -8,9 +8,7 @@ // // Test the "test_macros.h" header. -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__config> +#include <__cxx03/__config> #include "test_macros.h" #ifndef TEST_STD_VER diff --git a/libcxx/test/libcxx-03/strings/c.strings/constexpr_memmove.pass.cpp b/libcxx/test/libcxx-03/strings/c.strings/constexpr_memmove.pass.cpp index 2009cbe28a91f..d2ca5a2658524 100644 --- a/libcxx/test/libcxx-03/strings/c.strings/constexpr_memmove.pass.cpp +++ b/libcxx/test/libcxx-03/strings/c.strings/constexpr_memmove.pass.cpp @@ -19,9 +19,7 @@ // and is_trivially_XXX_assignable), so we use some funky types to test these // corner cases. -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__string/constexpr_c_functions.h> +#include <__cxx03/__string/constexpr_c_functions.h> #include <cassert> #include <cstdint> #include <type_traits> diff --git a/libcxx/test/libcxx-03/type_traits/is_trivially_comparable.compile.pass.cpp b/libcxx/test/libcxx-03/type_traits/is_trivially_comparable.compile.pass.cpp index e9b53080fcd6d..860ed63500e20 100644 --- a/libcxx/test/libcxx-03/type_traits/is_trivially_comparable.compile.pass.cpp +++ b/libcxx/test/libcxx-03/type_traits/is_trivially_comparable.compile.pass.cpp @@ -6,11 +6,9 @@ // //===----------------------------------------------------------------------===// -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__type_traits/conditional.h> -#include <__type_traits/is_equality_comparable.h> -#include <__type_traits/is_signed.h> +#include <__cxx03/__type_traits/conditional.h> +#include <__cxx03/__type_traits/is_equality_comparable.h> +#include <__cxx03/__type_traits/is_signed.h> #include <cstdint> enum Enum : int {}; diff --git a/libcxx/test/libcxx-03/type_traits/is_trivially_relocatable.compile.pass.cpp b/libcxx/test/libcxx-03/type_traits/is_trivially_relocatable.compile.pass.cpp index 8066925f2900a..09049f38497aa 100644 --- a/libcxx/test/libcxx-03/type_traits/is_trivially_relocatable.compile.pass.cpp +++ b/libcxx/test/libcxx-03/type_traits/is_trivially_relocatable.compile.pass.cpp @@ -6,9 +6,7 @@ // //===----------------------------------------------------------------------===// -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__type_traits/is_trivially_relocatable.h> +#include <__cxx03/__type_traits/is_trivially_relocatable.h> #include <array> #include <deque> #include <exception> diff --git a/libcxx/test/libcxx-03/utilities/exception_guard.odr.sh.cpp b/libcxx/test/libcxx-03/utilities/exception_guard.odr.sh.cpp index fb51a4bf4ed27..92ec3e97cabe4 100644 --- a/libcxx/test/libcxx-03/utilities/exception_guard.odr.sh.cpp +++ b/libcxx/test/libcxx-03/utilities/exception_guard.odr.sh.cpp @@ -9,8 +9,6 @@ // This test relies on `typeid` and thus requires `-frtti`. // UNSUPPORTED: no-rtti -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - // Make sure that we don't get ODR violations with __exception_guard when // linking together TUs compiled with different values of -f[no-]exceptions. @@ -19,7 +17,7 @@ // RUN: %{cxx} %{flags} %{link_flags} -o %t.exe %t.except.o %t.noexcept.o // RUN: %{run} -#include <__utility/exception_guard.h> +#include <__cxx03/__utility/exception_guard.h> #include <cassert> #include <cstring> #include <typeinfo> diff --git a/libcxx/test/libcxx-03/utilities/is_pointer_in_range.pass.cpp b/libcxx/test/libcxx-03/utilities/is_pointer_in_range.pass.cpp index b0a27c79287d4..6c60147adfdf4 100644 --- a/libcxx/test/libcxx-03/utilities/is_pointer_in_range.pass.cpp +++ b/libcxx/test/libcxx-03/utilities/is_pointer_in_range.pass.cpp @@ -6,9 +6,7 @@ // //===----------------------------------------------------------------------===// -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__utility/is_pointer_in_range.h> +#include <__cxx03/__utility/is_pointer_in_range.h> #include <cassert> #include "test_macros.h" diff --git a/libcxx/test/libcxx-03/utilities/is_valid_range.pass.cpp b/libcxx/test/libcxx-03/utilities/is_valid_range.pass.cpp index cb800aee5674b..9ad1e89f98187 100644 --- a/libcxx/test/libcxx-03/utilities/is_valid_range.pass.cpp +++ b/libcxx/test/libcxx-03/utilities/is_valid_range.pass.cpp @@ -6,9 +6,7 @@ // //===----------------------------------------------------------------------===// -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__utility/is_valid_range.h> +#include <__cxx03/__utility/is_valid_range.h> #include <cassert> #include "test_macros.h" diff --git a/libcxx/test/libcxx-03/utilities/meta/meta_base.pass.cpp b/libcxx/test/libcxx-03/utilities/meta/meta_base.pass.cpp index 66c25b1d75638..f6bddedc96ac0 100644 --- a/libcxx/test/libcxx-03/utilities/meta/meta_base.pass.cpp +++ b/libcxx/test/libcxx-03/utilities/meta/meta_base.pass.cpp @@ -7,15 +7,13 @@ //===----------------------------------------------------------------------===// // -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - #include "test_macros.h" TEST_CLANG_DIAGNOSTIC_IGNORED("-Wprivate-header") -#include <__type_traits/conjunction.h> -#include <__type_traits/disjunction.h> -#include <__type_traits/is_valid_expansion.h> -#include <__type_traits/negation.h> +#include <__cxx03/__type_traits/conjunction.h> +#include <__cxx03/__type_traits/disjunction.h> +#include <__cxx03/__type_traits/is_valid_expansion.h> +#include <__cxx03/__type_traits/negation.h> #include <cassert> #include <type_traits> #include <utility> diff --git a/libcxx/test/libcxx-03/utilities/no_destroy.pass.cpp b/libcxx/test/libcxx-03/utilities/no_destroy.pass.cpp index 8693bb17089dc..561654d7f31fb 100644 --- a/libcxx/test/libcxx-03/utilities/no_destroy.pass.cpp +++ b/libcxx/test/libcxx-03/utilities/no_destroy.pass.cpp @@ -6,9 +6,7 @@ // //===----------------------------------------------------------------------===// -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - -#include <__utility/no_destroy.h> +#include <__cxx03/__utility/no_destroy.h> #include <cassert> #include "test_macros.h" diff --git a/libcxx/test/libcxx-03/utilities/utility/private_constructor_tag.compile.pass.cpp b/libcxx/test/libcxx-03/utilities/utility/private_constructor_tag.compile.pass.cpp index 1644819a02f7f..a186098eeb295 100644 --- a/libcxx/test/libcxx-03/utilities/utility/private_constructor_tag.compile.pass.cpp +++ b/libcxx/test/libcxx-03/utilities/utility/private_constructor_tag.compile.pass.cpp @@ -6,8 +6,6 @@ // //===----------------------------------------------------------------------===// -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - // struct __private_constructor_tag{}; // The private constructor tag is intended to be a trivial type that can easily @@ -15,7 +13,7 @@ // // Tests whether the type is trivial. -#include <__utility/private_constructor_tag.h> +#include <__cxx03/__utility/private_constructor_tag.h> #include <type_traits> static_assert(std::is_trivially_copyable<std::__private_constructor_tag>::value, ""); _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits