[libcxx-commits] [libcxx] [libc++] Un-xfail module tests in picolibc tests (PR #78580)

via libcxx-commits libcxx-commits at lists.llvm.org
Thu Jan 18 05:57:42 PST 2024


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-libcxx

Author: Dominik Wójt (domin144)

<details>
<summary>Changes</summary>

Some of the module tests now pass after picolibc update. https://github.com/llvm/llvm-project/pull/77908

The remaining tests fail and are now set to xfail on picolibc specifically.

---
Full diff: https://github.com/llvm/llvm-project/pull/78580.diff


4 Files Affected:

- (modified) libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp (+4) 
- (modified) libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp (+4) 
- (modified) libcxx/test/std/modules/std.compat.pass.cpp (+4) 
- (modified) libcxx/utils/libcxx/test/features.py (-1) 


``````````diff
diff --git a/libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp b/libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp
index d56ebb2961d4ae..81241d7f43f9a1 100644
--- a/libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp
+++ b/libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp
@@ -12,6 +12,10 @@
 
 // XFAIL: has-no-cxx-module-support
 
+// picolibc does not provide the required timespec_get function, and the
+// "using-if-exists" mechanism apparently did not work here.
+// XFAIL: LIBCXX-PICOLIBC-FIXME
+
 // Make sure that the compile flags contain the expected elements.
 // The tests only look for the expected components and not the exact flags.
 // Otherwise changing the location of the module would break this test.
diff --git a/libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp b/libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp
index e84709853fbca1..b74c2f1a249fcc 100644
--- a/libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp
+++ b/libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp
@@ -12,6 +12,10 @@
 
 // XFAIL: has-no-cxx-module-support
 
+// picolibc does not provide the required timespec_get function, and the
+// "using-if-exists" mechanism apparently did not work here.
+// XFAIL: LIBCXX-PICOLIBC-FIXME
+
 // Make sure that the compile flags contain the expected elements.
 // The tests only look for the expected components and not the exact flags.
 // Otherwise changing the location of the module would break this test.
diff --git a/libcxx/test/std/modules/std.compat.pass.cpp b/libcxx/test/std/modules/std.compat.pass.cpp
index e840f3c6b629cf..40ea979e273465 100644
--- a/libcxx/test/std/modules/std.compat.pass.cpp
+++ b/libcxx/test/std/modules/std.compat.pass.cpp
@@ -12,6 +12,10 @@
 
 // XFAIL: has-no-cxx-module-support
 
+// picolibc does not provide the required timespec_get function, and the
+// "using-if-exists" mechanism apparently did not work here.
+// XFAIL: LIBCXX-PICOLIBC-FIXME
+
 // A minimal test to validate import works.
 
 // MODULE_DEPENDENCIES: std.compat
diff --git a/libcxx/utils/libcxx/test/features.py b/libcxx/utils/libcxx/test/features.py
index 8c27d8c8106761..1983bc91ab171b 100644
--- a/libcxx/utils/libcxx/test/features.py
+++ b/libcxx/utils/libcxx/test/features.py
@@ -324,7 +324,6 @@ def _getAndroidDeviceApi(cfg):
         # This is not allowed per C11 7.1.2 Standard headers/6
         #  Any declaration of a library function shall have external linkage.
         when=lambda cfg: "__ANDROID__" in compilerMacros(cfg)
-        or "__PICOLIBC__" in compilerMacros(cfg)
         or platform.system().lower().startswith("aix")
         # Avoid building on platforms that don't support modules properly.
         or not hasCompileFlag(cfg, "-Wno-reserved-module-identifier"),

``````````

</details>


https://github.com/llvm/llvm-project/pull/78580


More information about the libcxx-commits mailing list