[libcxx-commits] [libcxx] 91f110f - [libc++] Adjust XFAIL markup for modules tests on single-threaded systems

Louis Dionne via libcxx-commits libcxx-commits at lists.llvm.org
Wed Apr 15 11:29:13 PDT 2020


Author: Louis Dionne
Date: 2020-04-15T14:28:07-04:00
New Revision: 91f110f50ee66e0e8de7d4d82e9a4068b10afc91

URL: https://github.com/llvm/llvm-project/commit/91f110f50ee66e0e8de7d4d82e9a4068b10afc91
DIFF: https://github.com/llvm/llvm-project/commit/91f110f50ee66e0e8de7d4d82e9a4068b10afc91.diff

LOG: [libc++] Adjust XFAIL markup for modules tests on single-threaded systems

When building these tests without modules in the whole test suite,
the __config_site macro definitions are not included anymore in the
%{compile_flags}. This causes the _LIBCPP_HAS_NO_THREADS define not
to be picked up, and the test to XPASS on single-threaded systems.

This is a stop-gap measure to fix the build bots, however the proper
solution would be to always pass the __config_site defines as compiler
macros, whether we build with modules or not.

Added: 
    

Modified: 
    libcxx/test/libcxx/modules/cinttypes_exports.compile.pass.cpp
    libcxx/test/libcxx/modules/clocale_exports.compile.pass.cpp
    libcxx/test/libcxx/modules/cstdint_exports.compile.pass.cpp
    libcxx/test/libcxx/modules/inttypes_h_exports.compile.pass.cpp
    libcxx/test/libcxx/modules/stdint_h_exports.compile.pass.cpp
    libcxx/test/libcxx/modules/stds_include.sh.cpp

Removed: 
    


################################################################################
diff  --git a/libcxx/test/libcxx/modules/cinttypes_exports.compile.pass.cpp b/libcxx/test/libcxx/modules/cinttypes_exports.compile.pass.cpp
index 57a5ba5c55cb..8037ba3d8452 100644
--- a/libcxx/test/libcxx/modules/cinttypes_exports.compile.pass.cpp
+++ b/libcxx/test/libcxx/modules/cinttypes_exports.compile.pass.cpp
@@ -12,7 +12,10 @@
 
 // FIXME: The <atomic> header is not supported for single-threaded systems,
 // but still gets built as part of the 'std' module, which breaks the build.
-// XFAIL: libcpp-has-no-threads
+// The failure only shows up when modules are enabled AND we're building
+// without threads, which is when the __config_site macro for _LIBCPP_HAS_NO_THREADS
+// is honored.
+// XFAIL: libcpp-has-no-threads && -fmodules
 
 // REQUIRES: modules-support
 // ADDITIONAL_COMPILE_FLAGS: -fmodules

diff  --git a/libcxx/test/libcxx/modules/clocale_exports.compile.pass.cpp b/libcxx/test/libcxx/modules/clocale_exports.compile.pass.cpp
index 3b87b7b5c2a0..f34998503211 100644
--- a/libcxx/test/libcxx/modules/clocale_exports.compile.pass.cpp
+++ b/libcxx/test/libcxx/modules/clocale_exports.compile.pass.cpp
@@ -12,7 +12,10 @@
 
 // FIXME: The <atomic> header is not supported for single-threaded systems,
 // but still gets built as part of the 'std' module, which breaks the build.
-// XFAIL: libcpp-has-no-threads
+// The failure only shows up when modules are enabled AND we're building
+// without threads, which is when the __config_site macro for _LIBCPP_HAS_NO_THREADS
+// is honored.
+// XFAIL: libcpp-has-no-threads && -fmodules
 
 // UNSUPPORTED: c++98, c++03
 

diff  --git a/libcxx/test/libcxx/modules/cstdint_exports.compile.pass.cpp b/libcxx/test/libcxx/modules/cstdint_exports.compile.pass.cpp
index 0887b597b5bf..783670e0b80c 100644
--- a/libcxx/test/libcxx/modules/cstdint_exports.compile.pass.cpp
+++ b/libcxx/test/libcxx/modules/cstdint_exports.compile.pass.cpp
@@ -12,7 +12,10 @@
 
 // FIXME: The <atomic> header is not supported for single-threaded systems,
 // but still gets built as part of the 'std' module, which breaks the build.
-// XFAIL: libcpp-has-no-threads
+// The failure only shows up when modules are enabled AND we're building
+// without threads, which is when the __config_site macro for _LIBCPP_HAS_NO_THREADS
+// is honored.
+// XFAIL: libcpp-has-no-threads && -fmodules
 
 // Test that <cstdint> re-exports <stdint.h>
 

diff  --git a/libcxx/test/libcxx/modules/inttypes_h_exports.compile.pass.cpp b/libcxx/test/libcxx/modules/inttypes_h_exports.compile.pass.cpp
index 0add4e1a00ca..f4000a215792 100644
--- a/libcxx/test/libcxx/modules/inttypes_h_exports.compile.pass.cpp
+++ b/libcxx/test/libcxx/modules/inttypes_h_exports.compile.pass.cpp
@@ -12,7 +12,10 @@
 
 // FIXME: The <atomic> header is not supported for single-threaded systems,
 // but still gets built as part of the 'std' module, which breaks the build.
-// XFAIL: libcpp-has-no-threads
+// The failure only shows up when modules are enabled AND we're building
+// without threads, which is when the __config_site macro for _LIBCPP_HAS_NO_THREADS
+// is honored.
+// XFAIL: libcpp-has-no-threads && -fmodules
 
 // Test that intypes.h re-exports stdint.h
 

diff  --git a/libcxx/test/libcxx/modules/stdint_h_exports.compile.pass.cpp b/libcxx/test/libcxx/modules/stdint_h_exports.compile.pass.cpp
index b83e99bcc9c6..2f0f4c4ad4b2 100644
--- a/libcxx/test/libcxx/modules/stdint_h_exports.compile.pass.cpp
+++ b/libcxx/test/libcxx/modules/stdint_h_exports.compile.pass.cpp
@@ -8,7 +8,10 @@
 
 // FIXME: The <atomic> header is not supported for single-threaded systems,
 // but still gets built as part of the 'std' module, which breaks the build.
-// XFAIL: libcpp-has-no-threads
+// The failure only shows up when modules are enabled AND we're building
+// without threads, which is when the __config_site macro for _LIBCPP_HAS_NO_THREADS
+// is honored.
+// XFAIL: libcpp-has-no-threads && -fmodules
 
 // Test that int8_t and the like are exported from stdint.h, not inttypes.h
 

diff  --git a/libcxx/test/libcxx/modules/stds_include.sh.cpp b/libcxx/test/libcxx/modules/stds_include.sh.cpp
index 7ef29fcd3143..d7c4eabc25f8 100644
--- a/libcxx/test/libcxx/modules/stds_include.sh.cpp
+++ b/libcxx/test/libcxx/modules/stds_include.sh.cpp
@@ -15,6 +15,13 @@
 // are not modular
 // XFAIL: LIBCXX-WINDOWS-FIXME
 
+// FIXME: The <atomic> header is not supported for single-threaded systems,
+// but still gets built as part of the 'std' module, which breaks the build.
+// The failure only shows up when modules are enabled AND we're building
+// without threads, which is when the __config_site macro for _LIBCPP_HAS_NO_THREADS
+// is honored.
+// XFAIL: libcpp-has-no-threads && -fmodules
+
 // REQUIRES: modules-support
 
 // NOTE: The -std=XXX flag is present in %{flags}, so we overwrite it by passing it after %{flags}.


        


More information about the libcxx-commits mailing list