From 68c2a8140f7b8a487b7a9d9a53c6568b7336ee62 Mon Sep 17 00:00:00 2001 From: Nikolas Klauser Date: Tue, 25 Nov 2025 12:49:59 +0100 Subject: [PATCH] [libc++][C++03] Fix ODR tests (#169349) We don't really need to include `<__config>`. We just need to include a public C++ header. --- .../extensions/libcxx/odr_signature.exceptions.sh.cpp | 6 ++---- .../extensions/libcxx/odr_signature.hardening.sh.cpp | 10 ++++------ 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/libcxx/test/extensions/libcxx/odr_signature.exceptions.sh.cpp b/libcxx/test/extensions/libcxx/odr_signature.exceptions.sh.cpp index c0ba48eb245d..61aaf4f952a6 100644 --- a/libcxx/test/extensions/libcxx/odr_signature.exceptions.sh.cpp +++ b/libcxx/test/extensions/libcxx/odr_signature.exceptions.sh.cpp @@ -9,8 +9,6 @@ // ABI tags have no effect in MSVC mode. // XFAIL: msvc -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - // Test that we encode whether exceptions are supported in an ABI tag to avoid // ODR violations when linking TUs that have different values for it. @@ -24,14 +22,14 @@ // -fno-exceptions #ifdef TU1 -# include <__config> +# include _LIBCPP_HIDE_FROM_ABI TEST_NOINLINE inline int f() { return 1; } int tu1() { return f(); } #endif // TU1 // -fexceptions #ifdef TU2 -# include <__config> +# include _LIBCPP_HIDE_FROM_ABI TEST_NOINLINE inline int f() { return 2; } int tu2() { return f(); } #endif // TU2 diff --git a/libcxx/test/extensions/libcxx/odr_signature.hardening.sh.cpp b/libcxx/test/extensions/libcxx/odr_signature.hardening.sh.cpp index 8daf3f3fd046..28647d78c64c 100644 --- a/libcxx/test/extensions/libcxx/odr_signature.hardening.sh.cpp +++ b/libcxx/test/extensions/libcxx/odr_signature.hardening.sh.cpp @@ -9,8 +9,6 @@ // ABI tags have no effect in MSVC mode. // XFAIL: msvc -// XFAIL: FROZEN-CXX03-HEADERS-FIXME - // Test that we encode the hardening mode in an ABI tag to avoid ODR violations // when linking TUs that have different values for it. @@ -27,28 +25,28 @@ // fast hardening mode #ifdef TU1 -# include <__config> +# include _LIBCPP_HIDE_FROM_ABI TEST_NOINLINE inline int f() { return 1; } int tu1() { return f(); } #endif // TU1 // extensive hardening mode #ifdef TU2 -# include <__config> +# include _LIBCPP_HIDE_FROM_ABI TEST_NOINLINE inline int f() { return 2; } int tu2() { return f(); } #endif // TU2 // debug hardening mode #ifdef TU3 -# include <__config> +# include _LIBCPP_HIDE_FROM_ABI TEST_NOINLINE inline int f() { return 3; } int tu3() { return f(); } #endif // TU3 // No hardening #ifdef TU4 -# include <__config> +# include _LIBCPP_HIDE_FROM_ABI TEST_NOINLINE inline int f() { return 4; } int tu4() { return f(); } #endif // TU4