[libcxx-commits] [libcxx] [libc++][C++03] Fix ODR tests (PR #169349)
via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Nov 25 03:50:35 PST 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-libcxx
Author: Nikolas Klauser (philnik777)
<details>
<summary>Changes</summary>
We don't really need to include `<__config>`. We just need to include a public C++ header.
---
Full diff: https://github.com/llvm/llvm-project/pull/169349.diff
2 Files Affected:
- (modified) libcxx/test/extensions/libcxx/odr_signature.exceptions.sh.cpp (+2-4)
- (modified) libcxx/test/extensions/libcxx/odr_signature.hardening.sh.cpp (+4-6)
``````````diff
diff --git a/libcxx/test/extensions/libcxx/odr_signature.exceptions.sh.cpp b/libcxx/test/extensions/libcxx/odr_signature.exceptions.sh.cpp
index c0ba48eb245d2..61aaf4f952a66 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 <version>
_LIBCPP_HIDE_FROM_ABI TEST_NOINLINE inline int f() { return 1; }
int tu1() { return f(); }
#endif // TU1
// -fexceptions
#ifdef TU2
-# include <__config>
+# include <version>
_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 8daf3f3fd0463..28647d78c64cd 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 <version>
_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 <version>
_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 <version>
_LIBCPP_HIDE_FROM_ABI TEST_NOINLINE inline int f() { return 3; }
int tu3() { return f(); }
#endif // TU3
// No hardening
#ifdef TU4
-# include <__config>
+# include <version>
_LIBCPP_HIDE_FROM_ABI TEST_NOINLINE inline int f() { return 4; }
int tu4() { return f(); }
#endif // TU4
``````````
</details>
https://github.com/llvm/llvm-project/pull/169349
More information about the libcxx-commits
mailing list