[libc++] Translate MODULES_DEFINES annotations to ADDITIONAL_COMPILE_FLAGS
authorLouis Dionne <ldionne@apple.com>
Tue, 7 Apr 2020 16:42:30 +0000 (12:42 -0400)
committerLouis Dionne <ldionne@apple.com>
Tue, 7 Apr 2020 18:40:49 +0000 (14:40 -0400)
This allows both the old and the new testing formats to handle these
tests with modules enabled.

We also include the modules flags in the %{flags} substitution, which
means that .sh.cpp tests in the old format and all tests in the new
format will use modules flags when enabled.

70 files changed:
libcxx/test/libcxx/algorithms/alg.modifying.operations/alg.random.shuffle/random_shuffle.cxx1z.pass.cpp
libcxx/test/libcxx/algorithms/alg.modifying.operations/alg.random.shuffle/random_shuffle.depr_in_cxx14.fail.cpp
libcxx/test/libcxx/atomics/libcpp-has-no-threads.fail.cpp
libcxx/test/libcxx/containers/sequences/array/array.zero/db_back.pass.cpp
libcxx/test/libcxx/containers/sequences/array/array.zero/db_front.pass.cpp
libcxx/test/libcxx/containers/sequences/array/array.zero/db_indexing.pass.cpp
libcxx/test/libcxx/containers/sequences/deque/incomplete.pass.cpp
libcxx/test/libcxx/debug/containers/db_associative_container_tests.pass.cpp
libcxx/test/libcxx/debug/containers/db_sequence_container_iterators.multithread.pass.cpp
libcxx/test/libcxx/debug/containers/db_sequence_container_iterators.pass.cpp
libcxx/test/libcxx/debug/containers/db_string.pass.cpp
libcxx/test/libcxx/debug/containers/db_unord_container_tests.pass.cpp
libcxx/test/libcxx/debug/db_string_view.pass.cpp
libcxx/test/libcxx/debug/debug_abort.pass.cpp
libcxx/test/libcxx/debug/debug_helper_test.pass.cpp
libcxx/test/libcxx/debug/debug_register.pass.cpp
libcxx/test/libcxx/depr/depr.auto.ptr/auto.ptr/auto_ptr.cxx1z.pass.cpp
libcxx/test/libcxx/depr/depr.auto.ptr/auto.ptr/auto_ptr.depr_in_cxx11.fail.cpp
libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.cxx2a.pass.cpp
libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.depr_in_cxx17.fail.cpp
libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx2a.fail.cpp
libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx2a.pass.cpp
libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.depr_in_cxx17.fail.cpp
libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/construct.cxx2a.pass.cpp
libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/max_size.cxx2a.pass.cpp
libcxx/test/libcxx/depr/depr.default.allocator/allocator_types.cxx2a.pass.cpp
libcxx/test/libcxx/depr/depr.default.allocator/allocator_types.depr_in_cxx17.fail.cpp
libcxx/test/libcxx/depr/depr.default.allocator/allocator_void.cxx2a.pass.cpp
libcxx/test/libcxx/depr/depr.default.allocator/allocator_void.depr_in_cxx17.fail.cpp
libcxx/test/libcxx/depr/depr.function.objects/adaptors.depr_in_cxx11.fail.cpp
libcxx/test/libcxx/depr/depr.function.objects/depr.adaptors.cxx1z.pass.cpp
libcxx/test/libcxx/depr/enable_removed_cpp17_features.pass.cpp
libcxx/test/libcxx/depr/exception.unexpected/get_unexpected.pass.cpp
libcxx/test/libcxx/depr/exception.unexpected/set_unexpected.pass.cpp
libcxx/test/libcxx/depr/exception.unexpected/unexpected.pass.cpp
libcxx/test/libcxx/diagnostics/enable_nodiscard.fail.cpp
libcxx/test/libcxx/diagnostics/enable_nodiscard_disable_after_cxx17.fail.cpp
libcxx/test/libcxx/diagnostics/enable_nodiscard_disable_nodiscard_ext.fail.cpp
libcxx/test/libcxx/diagnostics/nodiscard_aftercxx17.pass.cpp
libcxx/test/libcxx/diagnostics/nodiscard_extensions.fail.cpp
libcxx/test/libcxx/include_as_c.sh.cpp
libcxx/test/libcxx/input.output/filesystems/class.path/path.itr/iterator_db.pass.cpp
libcxx/test/libcxx/iterators/advance.debug1.pass.cpp
libcxx/test/libcxx/iterators/next.debug1.pass.cpp
libcxx/test/libcxx/iterators/prev.debug1.pass.cpp
libcxx/test/libcxx/strings/iterators.noexcept.pass.cpp
libcxx/test/libcxx/thread/futures/futures.promise/set_exception.pass.cpp
libcxx/test/libcxx/thread/futures/futures.promise/set_exception_at_thread_exit.pass.cpp
libcxx/test/libcxx/thread/thread.lock/thread.lock.guard/nodiscard.fail.cpp
libcxx/test/libcxx/thread/thread.mutex/thread_safety_lock_guard.pass.cpp
libcxx/test/libcxx/thread/thread.mutex/thread_safety_lock_unlock.pass.cpp
libcxx/test/libcxx/thread/thread.mutex/thread_safety_missing_unlock.fail.cpp
libcxx/test/libcxx/thread/thread.mutex/thread_safety_requires_capability.pass.cpp
libcxx/test/libcxx/utilities/memory/util.dynamic.safety/get_pointer_safety_new_abi.pass.cpp
libcxx/test/libcxx/utilities/tuple/tuple.tuple/tuple.cnstr/enable_reduced_arity_initialization_extension.pass.cpp
libcxx/test/std/containers/sequences/deque/types.pass.cpp
libcxx/test/std/containers/sequences/list/types.pass.cpp
libcxx/test/std/containers/sequences/vector/types.pass.cpp
libcxx/test/std/depr/depr.lib.binders/depr.lib.bind.1st/bind1st.depr_in_cxx11.fail.cpp
libcxx/test/std/depr/depr.lib.binders/depr.lib.bind.2nd/bind2nd.depr_in_cxx11.fail.cpp
libcxx/test/std/depr/depr.lib.binders/depr.lib.binder.1st/binder1st.depr_in_cxx11.fail.cpp
libcxx/test/std/depr/depr.lib.binders/depr.lib.binder.2nd/binder2nd.depr_in_cxx11.fail.cpp
libcxx/test/std/utilities/function.objects/negators/binary_negate.pass.cpp
libcxx/test/std/utilities/function.objects/negators/not1.pass.cpp
libcxx/test/std/utilities/function.objects/negators/not2.pass.cpp
libcxx/test/std/utilities/function.objects/negators/unary_negate.pass.cpp
libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_constructible.pass.cpp
libcxx/utils/libcxx/test/config.py
libcxx/utils/libcxx/test/format.py
libcxx/utils/libcxx/test/newformat.py

index a63c1c2..362493c 100644 (file)
 
 // REQUIRES: verify-support
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX17_REMOVED_RANDOM_SHUFFLE
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_ENABLE_CXX17_REMOVED_RANDOM_SHUFFLE
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX17_REMOVED_RANDOM_SHUFFLE
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <algorithm>
 #include <vector>
index b67f9a8..2dc8013 100644 (file)
@@ -21,8 +21,7 @@
 // UNSUPPORTED: c++98, c++03, c++11
 // REQUIRES: verify-support
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX17_REMOVED_RANDOM_SHUFFLE
-#define _LIBCPP_ENABLE_CXX17_REMOVED_RANDOM_SHUFFLE
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX17_REMOVED_RANDOM_SHUFFLE
 
 #include <algorithm>
 #include <cstddef>
index 6ee09e2..9c6a8f7 100644 (file)
 // Test that including <atomic> fails to compile when _LIBCPP_HAS_NO_THREADS
 // is defined.
 
-// MODULES_DEFINES: _LIBCPP_HAS_NO_THREADS
-#ifndef _LIBCPP_HAS_NO_THREADS
-#define _LIBCPP_HAS_NO_THREADS
-#endif
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_HAS_NO_THREADS
 
 #include <atomic>
 
index 1cd95f3..2ba3975 100644 (file)
@@ -8,14 +8,13 @@
 // UNSUPPORTED: c++98, c++03
 // UNSUPPORTED: windows
 
-// MODULES_DEFINES: _LIBCPP_DEBUG=1
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // Can't test the system lib because this test enables debug mode
 // UNSUPPORTED: with_system_cxx_lib
 
 // test array<T, 0>::front() raises a debug error.
 
-#define _LIBCPP_DEBUG 1
 #include <array>
 #include "test_macros.h"
 #include "debug_mode_helper.h"
index 98149fa..9eb98d5 100644 (file)
@@ -8,14 +8,13 @@
 // UNSUPPORTED: c++98, c++03
 // UNSUPPORTED: windows
 
-// MODULES_DEFINES: _LIBCPP_DEBUG=1
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // Can't test the system lib because this test enables debug mode
 // UNSUPPORTED: with_system_cxx_lib
 
 // test array<T, 0>::front() raises a debug error.
 
-#define _LIBCPP_DEBUG 1
 #include <array>
 #include "test_macros.h"
 #include "debug_mode_helper.h"
index 8cbf0d7..9501623 100644 (file)
@@ -8,14 +8,13 @@
 // UNSUPPORTED: c++98, c++03
 // UNSUPPORTED: windows
 
-// MODULES_DEFINES: _LIBCPP_DEBUG=1
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // Can't test the system lib because this test enables debug mode
 // UNSUPPORTED: with_system_cxx_lib
 
 // test array<T, 0>::operator[] raises a debug error.
 
-#define _LIBCPP_DEBUG 1
 #include <array>
 #include "test_macros.h"
 #include "debug_mode_helper.h"
index 5576f2b..65505ef 100644 (file)
@@ -11,8 +11,8 @@
 // deque()
 // deque::iterator()
 
-// MODULES_DEFINES: _LIBCPP_ABI_INCOMPLETE_TYPES_IN_DEQUE
-#define _LIBCPP_ABI_INCOMPLETE_TYPES_IN_DEQUE
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ABI_INCOMPLETE_TYPES_IN_DEQUE
+
 #include <deque>
 #include <cassert>
 
index 8ee62ae..9386be0 100644 (file)
@@ -9,15 +9,13 @@
 // UNSUPPORTED: c++98, c++03, c++11, c++14
 // UNSUPPORTED: windows
 // UNSUPPORTED: libcpp-no-if-constexpr
-// MODULES_DEFINES: _LIBCPP_DEBUG=1
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // Can't test the system lib because this test enables debug mode
 // UNSUPPORTED: with_system_cxx_lib
 
 // test container debugging
 
-#define _LIBCPP_DEBUG 1
-
 #include <map>
 #include <set>
 #include <utility>
index fcdc45d..831f3e4 100644 (file)
@@ -9,15 +9,13 @@
 // UNSUPPORTED: c++98, c++03, c++11, c++14
 // UNSUPPORTED: windows
 // UNSUPPORTED: libcpp-has-no-threads
-// MODULES_DEFINES: _LIBCPP_DEBUG=1
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // Can't test the system lib because this test enables debug mode
 // UNSUPPORTED: with_system_cxx_lib
 
 // test multihtreaded container debugging
 
-#define _LIBCPP_DEBUG 1
-
 #include <cassert>
 #include <cstddef>
 #include <deque>
index 68b41b2..efd5f29 100644 (file)
@@ -9,15 +9,13 @@
 // UNSUPPORTED: c++98, c++03, c++11, c++14
 // UNSUPPORTED: windows
 // UNSUPPORTED: libcpp-no-if-constexpr
-// MODULES_DEFINES: _LIBCPP_DEBUG=1
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // Can't test the system lib because this test enables debug mode
 // UNSUPPORTED: with_system_cxx_lib
 
 // test container debugging
 
-#define _LIBCPP_DEBUG 1
-
 #include <forward_list>
 #include <list>
 #include <vector>
index 8c39ccc..ff0c777 100644 (file)
@@ -9,14 +9,13 @@
 // UNSUPPORTED: c++98, c++03, c++11, c++14
 // UNSUPPORTED: windows
 // UNSUPPORTED: libcpp-no-if-constexpr
-// MODULES_DEFINES: _LIBCPP_DEBUG=1
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // Can't test the system lib because this test enables debug mode
 // UNSUPPORTED: with_system_cxx_lib
 
 // test container debugging
 
-#define _LIBCPP_DEBUG 1
 #include <string>
 #include <vector>
 
index b5d1995..b4cb874 100644 (file)
@@ -9,14 +9,13 @@
 // UNSUPPORTED: c++98, c++03, c++11, c++14
 // UNSUPPORTED: windows
 // UNSUPPORTED: libcpp-no-if-constexpr
-// MODULES_DEFINES: _LIBCPP_DEBUG=1
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // Can't test the system lib because this test enables debug mode
 // UNSUPPORTED: with_system_cxx_lib
 
 // test container debugging
 
-#define _LIBCPP_DEBUG 1
 #include <unordered_map>
 #include <unordered_set>
 #include <utility>
index d4ae1ce..6de2cf7 100644 (file)
@@ -9,14 +9,13 @@
 // UNSUPPORTED: c++98, c++03, c++11, c++14
 // UNSUPPORTED: windows
 // UNSUPPORTED: libcpp-no-if-constexpr
-// MODULES_DEFINES: _LIBCPP_DEBUG=1
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // Can't test the system lib because this test enables debug mode
 // UNSUPPORTED: with_system_cxx_lib
 
 // test container debugging
 
-#define _LIBCPP_DEBUG 1
 #include <string_view>
 
 #include "test_macros.h"
index 15c9173..89dbdc7 100644 (file)
@@ -7,15 +7,13 @@
 //
 //===----------------------------------------------------------------------===//
 
-// MODULES_DEFINES: _LIBCPP_DEBUG=0
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=0
 
 // Can't test the system lib because this test enables debug mode
 // UNSUPPORTED: with_system_cxx_lib
 
 // Test that the default debug handler aborts the program.
 
-#define _LIBCPP_DEBUG 0
-
 #include <csignal>
 #include <cstdlib>
 #include <__debug>
index fada39c..be41d12 100644 (file)
@@ -13,9 +13,7 @@
 // Can't test the system lib because this test enables debug mode
 // UNSUPPORTED: with_system_cxx_lib
 
-// MODULES_DEFINES: _LIBCPP_DEBUG=1
-
-#define _LIBCPP_DEBUG 1
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <__debug>
 #include "test_macros.h"
index d687fc9..ac298c0 100644 (file)
@@ -7,13 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
-// MODULES_DEFINES: _LIBCPP_DEBUG=1
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // Can't test the system lib because this test enables debug mode
 // UNSUPPORTED: with_system_cxx_lib
 
-#define _LIBCPP_DEBUG 1
-
 #include <cstdlib>
 #include <string>
 #include <type_traits>
index cdf976c..89ddd33 100644 (file)
 //  However, for backwards compatibility, if _LIBCPP_NO_REMOVE_AUTOPTR
 //  is defined before including <memory>, then auto_ptr will be restored.
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <memory>
 #include <type_traits>
index 0b7d908..31019f3 100644 (file)
@@ -22,8 +22,7 @@
 // UNSUPPORTED: c++98, c++03
 // REQUIRES: verify-support
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR
-#define _LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR
 
 #include <memory>
 #include "test_macros.h"
index 0cf49df..59657ca 100644 (file)
 //  However, for backwards compatibility, if _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
 //  is defined before including <memory>, then removed members will be restored.
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <memory>
 #include <cassert>
index 03cd3b7..8b919e4 100644 (file)
@@ -17,8 +17,7 @@
 // UNSUPPORTED: c++98, c++03, c++11, c++14
 // REQUIRES: verify-support
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-#define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
 
 #include <memory>
 #include "test_macros.h"
index 9c2e4b1..455016a 100644 (file)
 //  However, for backwards compatibility, if _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
 //  is defined before including <memory>, then removed members will be restored.
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <memory>
 #include <cassert>
index 1d83efa..cca8510 100644 (file)
 // allocator:
 // T* allocate(size_t n, const void* hint);
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <memory>
 #include <cassert>
index 03b1791..844bb55 100644 (file)
@@ -16,8 +16,7 @@
 // UNSUPPORTED: c++98, c++03, c++11, c++14
 // REQUIRES: verify-support
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-#define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
 
 #include <memory>
 #include "test_macros.h"
index e86bfe2..56acbbf 100644 (file)
 //  However, for backwards compatibility, if _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
 //  is defined before including <memory>, then removed members will be restored.
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <memory>
 #include <cassert>
index 2b6499f..b075683 100644 (file)
 //  However, for backwards compatibility, if _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
 //  is defined before including <memory>, then removed members will be restored.
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <memory>
 #include <limits>
index 6d8c493..33ed39a 100644 (file)
 // ...
 // };
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <memory>
 #include <type_traits>
index c1a6333..73e22fe 100644 (file)
@@ -34,8 +34,7 @@
 // so the rebind<int> check below fails.
 // UNSUPPORTED: clang-6
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-#define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
 
 #include <memory>
 #include "test_macros.h"
index a3dc9cb..3b941d2 100644 (file)
 //     template <class _Up> struct rebind {typedef allocator<_Up> other;};
 // };
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <memory>
 #include <type_traits>
index 82d1777..8133fff 100644 (file)
@@ -24,8 +24,7 @@
 // UNSUPPORTED: c++98, c++03, c++11, c++14
 // REQUIRES: verify-support
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-#define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
 
 #include <memory>
 #include "test_macros.h"
index 329b3ac..c5f1552 100644 (file)
@@ -12,8 +12,7 @@
 // UNSUPPORTED: c++98, c++03
 // REQUIRES: verify-support
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
-#define _LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
 
 #include <functional>
 #include <cassert>
index fff0d35..7583c36 100644 (file)
 //  However, for backwards compatibility, if _LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
 //  is defined before including <functional>, then they will be restored.
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <functional>
 #include <cassert>
index 115a5f3..3ae848f 100644 (file)
@@ -9,8 +9,8 @@
 // Test that defining _LIBCPP_ENABLE_CXX17_REMOVED_FEATURES correctly defines
 // _LIBCPP_ENABLE_CXX17_REMOVED_FOO for each individual component macro.
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX17_REMOVED_FEATURES
-#define _LIBCPP_ENABLE_CXX17_REMOVED_FEATURES
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX17_REMOVED_FEATURES
+
 #include <__config>
 
 #include "test_macros.h"
index a40d889..e4533a0 100644 (file)
@@ -8,9 +8,8 @@
 
 // test get_unexpected
 
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS
-#define _LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS
 #include <exception>
 #include <cassert>
 #include <cstdlib>
index 745c3cd..f428790 100644 (file)
@@ -8,8 +8,8 @@
 
 // test set_unexpected
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS
-#define _LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS
+
 #include <exception>
 #include <cassert>
 #include <cstdlib>
index fa7ed3e..6ab1147 100644 (file)
@@ -8,8 +8,8 @@
 
 // test unexpected
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS
-#define _LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS
+
 #include <exception>
 #include <cstdlib>
 #include <cassert>
index d579a4c..0888684 100644 (file)
@@ -18,8 +18,7 @@
 
 // REQUIRES: verify-support
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_NODISCARD
-#define _LIBCPP_ENABLE_NODISCARD
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_NODISCARD
 
 #include <__config>
 
index f4f74de..1a21b48 100644 (file)
 // Test that _LIBCPP_DISABLE_NODISCARD_EXT only disables _LIBCPP_NODISCARD_EXT
 // and not _LIBCPP_NODISCARD_AFTER_CXX17.
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_NODISCARD
-// MODULES_DEFINES: _LIBCPP_DISABLE_NODISCARD_AFTER_CXX17
-#define _LIBCPP_ENABLE_NODISCARD
-#define _LIBCPP_DISABLE_NODISCARD_AFTER_CXX17
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_NODISCARD
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_NODISCARD_AFTER_CXX17
 #include <__config>
 
 
index c2f2938..888785e 100644 (file)
 // UNSUPPORTED: gcc-5, gcc-6
 
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_NODISCARD
-// MODULES_DEFINES: _LIBCPP_DISABLE_NODISCARD_EXT
-#define _LIBCPP_ENABLE_NODISCARD
-#define _LIBCPP_DISABLE_NODISCARD_EXT
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_NODISCARD
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_NODISCARD_EXT
 #include <__config>
 
 
index edf5a25..4e85e25 100644 (file)
@@ -10,8 +10,8 @@
 // Test that _LIBCPP_NODISCARD_AFTER_CXX17 is disabled whenever
 // _LIBCPP_DISABLE_NODISCARD_AFTER_CXX17 is defined by the user.
 
-// MODULES_DEFINES: _LIBCPP_DISABLE_NODISCARD_AFTER_CXX17
-#define _LIBCPP_DISABLE_NODISCARD_AFTER_CXX17
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_NODISCARD_AFTER_CXX17
+
 #include <__config>
 
 #include "test_macros.h"
index ef6e1fe..6dbeb7f 100644 (file)
@@ -21,8 +21,7 @@
 // be tested here and in nodiscard_extensions.pass.cpp. They should also
 // be listed in `UsingLibcxx.rst` in the documentation for the extension.
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_NODISCARD
-#define _LIBCPP_ENABLE_NODISCARD
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_NODISCARD
 
 #include <algorithm>
 #include <functional>
index c001c63..8a57e38 100644 (file)
@@ -7,6 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+// We're building as C, so this test doesn't work when building with modules.
+// UNSUPPORTED: -fmodules
+
 // Test that the C wrapper headers can be included when compiling them as C.
 
 // NOTE: It's not common or recommended to have libc++ in the header search
index 6fa9d2c..3c69c18 100644 (file)
@@ -9,7 +9,7 @@
 // UNSUPPORTED: c++98, c++03
 // UNSUPPORTED: windows
 
-// MODULES_DEFINES: _LIBCPP_DEBUG=0
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=0
 
 // This test requires debug mode, which the library on macOS doesn't have.
 // UNSUPPORTED: with_system_cxx_lib=macosx
@@ -18,7 +18,6 @@
 
 // class path
 
-#define _LIBCPP_DEBUG 0
 #include "filesystem_include.h"
 #include <iterator>
 #include <type_traits>
index fd67953..f9b9596 100644 (file)
@@ -7,17 +7,15 @@
 //===----------------------------------------------------------------------===//
 
 // Can't test the system lib because this test enables debug mode
-// MODULES_DEFINES: _LIBCPP_DEBUG=1
 // UNSUPPORTED: c++98, c++03
 // UNSUPPORTED: windows
 // UNSUPPORTED: with_system_cxx_lib
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=0
 
 // <list>
 
 // Call advance(non-bidi iterator, -1)
 
-#define _LIBCPP_DEBUG 0
-
 #include <iterator>
 #include "test_macros.h"
 #include "debug_mode_helper.h"
index 66d3a1a..f719064 100644 (file)
@@ -7,17 +7,15 @@
 //===----------------------------------------------------------------------===//
 
 // Can't test the system lib because this test enables debug mode
-// MODULES_DEFINES: _LIBCPP_DEBUG=1
 // UNSUPPORTED: c++98, c++03
 // UNSUPPORTED: windows
 // UNSUPPORTED: with_system_cxx_lib
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=0
 
 // <list>
 
 // Call next(non-bidi iterator, -1)
 
-#define _LIBCPP_DEBUG 0
-
 #include <iterator>
 #include "test_macros.h"
 #include "debug_mode_helper.h"
index 42222de..b58debc 100644 (file)
@@ -7,18 +7,16 @@
 //===----------------------------------------------------------------------===//
 
 // Can't test the system lib because this test enables debug mode
-// MODULES_DEFINES: _LIBCPP_DEBUG=1
 // UNSUPPORTED: with_system_cxx_lib
 // UNSUPPORTED: c++98, c++03
 // UNSUPPORTED: windows
 // UNSUPPORTED: with_system_cxx_lib
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=0
 
 // <list>
 
 // Call prev(forward_iterator, -1)
 
-#define _LIBCPP_DEBUG 0
-
 #include <iterator>
 #include "test_macros.h"
 #include "debug_mode_helper.h"
index b46bc63..787b86a 100644 (file)
@@ -18,8 +18,7 @@
 // When exceptions are disabled, all iterators should get this "fast path"
 //
 
-// MODULES_DEFINES: _LIBCPP_NO_EXCEPTIONS
-#define _LIBCPP_NO_EXCEPTIONS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_NO_EXCEPTIONS
 
 #include <iterator>
 #include <cassert>
index 37ef0d1..2168374 100644 (file)
@@ -10,7 +10,7 @@
 // UNSUPPORTED: libcpp-has-no-threads
 // UNSUPPORTED: c++98, c++03
 
-// MODULES_DEFINES: _LIBCPP_DEBUG=0
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=0
 
 // This test requires debug mode, which the library on macOS doesn't have.
 // UNSUPPORTED: with_system_cxx_lib=macosx
@@ -22,8 +22,6 @@
 // void set_exception(exception_ptr p);
 // Test that a null exception_ptr is diagnosed.
 
-#define _LIBCPP_DEBUG 0
-
 #include <future>
 #include <exception>
 #include <cstdlib>
index 5477877..7689006 100644 (file)
@@ -10,7 +10,7 @@
 // UNSUPPORTED: libcpp-has-no-threads
 // UNSUPPORTED: c++98, c++03
 
-// MODULES_DEFINES: _LIBCPP_DEBUG=0
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=0
 
 // This test requires debug mode, which the library on macOS doesn't have.
 // UNSUPPORTED: with_system_cxx_lib=macosx
@@ -22,7 +22,6 @@
 // void set_exception_on_thread_exit(exception_ptr p);
 // Test that a null exception_ptr is diagnosed.
 
-#define _LIBCPP_DEBUG 0
 #include <future>
 #include <exception>
 #include <cstdlib>
index e14bcd9..f848d5e 100644 (file)
@@ -27,8 +27,8 @@
 // Test that we properly apply [[nodiscard]] to lock_guard's constructors,
 // which is a libc++ extension.
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_NODISCARD
-#define _LIBCPP_ENABLE_NODISCARD
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_NODISCARD
+
 #include <mutex>
 
 int main(int, char**) {
index 8f8b6ce..380839c 100644 (file)
@@ -15,8 +15,7 @@
 
 // <mutex>
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
-#define _LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
 
 #include <mutex>
 
index cc355ee..1c53f21 100644 (file)
@@ -15,8 +15,7 @@
 
 // <mutex>
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
-#define _LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
 
 #include <mutex>
 
index 7dd3f5d..f494ac8 100644 (file)
@@ -15,8 +15,7 @@
 
 // <mutex>
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
-#define _LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
 
 #include <mutex>
 
index 538fbcc..ed4b866 100644 (file)
@@ -15,8 +15,7 @@
 
 // <mutex>
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
-#define _LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
 
 #include <mutex>
 
index 7a4a4cb..4aa6854 100644 (file)
@@ -13,8 +13,8 @@
 // The pointer_safety interface is no longer provided in C++03 in the new ABI.
 // XFAIL: c++98, c++03
 
-// MODULES_DEFINES: _LIBCPP_ABI_POINTER_SAFETY_ENUM_TYPE
-#define _LIBCPP_ABI_POINTER_SAFETY_ENUM_TYPE
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ABI_POINTER_SAFETY_ENUM_TYPE
+
 #include <memory>
 #include <cassert>
 
index 9624eb8..4e7341f 100644 (file)
@@ -15,8 +15,8 @@
 
 // UNSUPPORTED: c++98, c++03
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_TUPLE_IMPLICIT_REDUCED_ARITY_EXTENSION
-#define _LIBCPP_ENABLE_TUPLE_IMPLICIT_REDUCED_ARITY_EXTENSION
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_TUPLE_IMPLICIT_REDUCED_ARITY_EXTENSION
+
 #include <tuple>
 #include <cassert>
 #include <type_traits>
index 7e777e0..bfe4808 100644 (file)
 //     typedef std::reverse_iterator<const_iterator>    const_reverse_iterator;
 // };
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <deque>
 #include <iterator>
index 644e552..0c1ca27 100644 (file)
 //     typedef typename allocator_type::pointer pointer;
 //     typedef typename allocator_type::const_pointer const_pointer;
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <list>
 #include <type_traits>
index 6cd7993..4bcfbe7 100644 (file)
 //     typedef std::reverse_iterator<const_iterator>    const_reverse_iterator;
 // };
 
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <vector>
 #include <iterator>
index 9efea4b..0a58370 100644 (file)
@@ -13,9 +13,7 @@
 // UNSUPPORTED: clang-4.0
 // UNSUPPORTED: c++98, c++03
 // REQUIRES: verify-support
-
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
-#define _LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
 
 #include <functional>
 
index a1c8081..b399dda 100644 (file)
@@ -13,9 +13,7 @@
 // UNSUPPORTED: clang-4.0
 // UNSUPPORTED: c++98, c++03
 // REQUIRES: verify-support
-
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
-#define _LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
 
 #include <functional>
 
index 6a5bc32..e19ac68 100644 (file)
@@ -13,9 +13,7 @@
 // UNSUPPORTED: clang-4.0
 // UNSUPPORTED: c++98, c++03
 // REQUIRES: verify-support
-
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
-#define _LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
 
 #include <functional>
 
index 6ec5b6e..cc4a128 100644 (file)
@@ -13,9 +13,7 @@
 // UNSUPPORTED: clang-4.0
 // UNSUPPORTED: c++98, c++03
 // REQUIRES: verify-support
-
-// MODULES_DEFINES: _LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
-#define _LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS
 
 #include <functional>
 
index ba79cad..8e310e4 100644 (file)
@@ -10,8 +10,7 @@
 
 // binary_negate
 
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <functional>
 #include <type_traits>
index daccbcc..f74fb1c 100644 (file)
@@ -10,8 +10,7 @@
 
 // not1
 
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <functional>
 #include <cassert>
index 8fb4959..2235b99 100644 (file)
@@ -10,8 +10,7 @@
 
 // not2
 
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <functional>
 #include <cassert>
index 91f09a8..de3c429 100644 (file)
@@ -10,8 +10,7 @@
 
 // unary_negate
 
-// MODULES_DEFINES: _LIBCPP_DISABLE_DEPRECATION_WARNINGS
-#define _LIBCPP_DISABLE_DEPRECATION_WARNINGS
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
 #include <functional>
 #include <type_traits>
index b519724..77c021f 100644 (file)
@@ -13,8 +13,8 @@
 // template <class T, class... Args>
 //   struct is_constructible;
 
-// MODULES_DEFINES: _LIBCPP_TESTING_FALLBACK_IS_CONSTRUCTIBLE
-#define _LIBCPP_TESTING_FALLBACK_IS_CONSTRUCTIBLE
+// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_TESTING_FALLBACK_IS_CONSTRUCTIBLE
+
 #include <type_traits>
 #include "test_macros.h"
 
index 80aa4f2..e3a4820 100644 (file)
@@ -1036,7 +1036,8 @@ class Configuration(object):
         sub.append(('%{cxx}', '{} {}'.format(tool_env, pipes.quote(self.cxx.path))))
         sub.append(('%{libcxx_src_root}', self.libcxx_src_root))
         # Configure flags substitutions
-        sub.append(('%{flags}',         ' '.join(map(pipes.quote, self.cxx.flags))))
+        flags = self.cxx.flags + (self.cxx.modules_flags if self.cxx.use_modules else [])
+        sub.append(('%{flags}',         ' '.join(map(pipes.quote, flags))))
         sub.append(('%{compile_flags}', ' '.join(map(pipes.quote, self.cxx.compile_flags))))
         sub.append(('%{link_flags}',    ' '.join(map(pipes.quote, self.cxx.link_flags))))
         sub.append(('%{link_libcxxabi}', pipes.quote(self.cxx.link_libcxxabi_flag)))
index a4b6d66..0316835 100644 (file)
@@ -46,8 +46,6 @@ class LibcxxTestFormat(object):
     @staticmethod
     def _make_custom_parsers(test):
         return [
-            IntegratedTestKeywordParser('MODULES_DEFINES:', ParserKind.LIST,
-                                        initial_value=[]),
             IntegratedTestKeywordParser('FILE_DEPENDENCIES:', ParserKind.LIST,
                                         initial_value=test.file_dependencies),
             IntegratedTestKeywordParser('ADDITIONAL_COMPILE_FLAGS:', ParserKind.LIST,
@@ -144,11 +142,7 @@ class LibcxxTestFormat(object):
         if is_fail_test:
             test_cxx.useCCache(False)
             test_cxx.useWarnings(False)
-        extra_modules_defines = self._get_parser('MODULES_DEFINES:',
-                                                 parsers).getValue()
         if '-fmodules' in test.config.available_features:
-            test_cxx.compile_flags += [('-D%s' % mdef.strip()) for
-                                       mdef in extra_modules_defines]
             test_cxx.addWarningFlagIfSupported('-Wno-macro-redefined')
             # FIXME: libc++ debug tests #define _LIBCPP_ASSERT to override it
             # If we see this we need to build the test against uniquely built
index 8076047..f1518df 100644 (file)
@@ -81,8 +81,6 @@ class CxxStandardLibraryTest(lit.formats.TestFormat):
     past, so we favour having tests mark themselves as unsupported explicitly.
 
     This test format still needs work in the following areas:
-        - It doesn't support the MODULES_DEFINES from the old test format, but
-          that can be achieved easily with ADDITIONAL_COMPILE_FLAGS.
         - It is unknown how well it works on Windows yet.
     """
     def getTestsInDirectory(self, testSuite, pathInSuite, litConfig, localConfig):
@@ -128,10 +126,24 @@ class CxxStandardLibraryTest(lit.formats.TestFormat):
         compilerSupportsVerify = result.code != lit.Test.FAIL
         return compilerSupportsVerify and testContainsTags
 
+    def _disableWithModules(self, test, litConfig):
+        with open(test.getSourcePath(), 'rb') as f:
+            contents = f.read()
+        return b'#define _LIBCPP_ASSERT' in contents
+
     def execute(self, test, litConfig):
         self._checkSubstitutions(test.config.substitutions)
         VERIFY_FLAGS = '-Xclang -verify -Xclang -verify-ignore-unexpected=note -ferror-limit=0'
         filename = test.path_in_suite[-1]
+
+        # TODO(ldionne): We currently disable tests that re-define _LIBCPP_ASSERT
+        #                when we run with modules enabled. Instead, we should
+        #                split the part that does a death test outside of the
+        #                test, and only disable that part when modules are
+        #                enabled.
+        if '-fmodules' in test.config.available_features and self._disableWithModules(test, litConfig):
+            return lit.Test.Result(lit.Test.UNSUPPORTED, 'Test {} is unsupported when modules are enabled')
+
         if filename.endswith('.sh.cpp') or filename.endswith('.sh.s'):
             steps = [ ] # The steps are already in the script
             return self._executeShTest(test, litConfig, steps)