summaryrefslogtreecommitdiffstats
path: root/libcxx
diff options
context:
space:
mode:
authorEric Fiselier <eric@efcs.ca>2015-08-28 05:46:17 +0000
committerEric Fiselier <eric@efcs.ca>2015-08-28 05:46:17 +0000
commit1e051aab0cc12bb4a4c1be8d1b1b70537fd0f012 (patch)
treecccde78e8ef13effb76aaa162ff1901771f7cd1d /libcxx
parentbc3af7b031b5cb4faea54fbdf7cab2e0dd4d01e1 (diff)
downloadbcm5719-llvm-1e051aab0cc12bb4a4c1be8d1b1b70537fd0f012.tar.gz
bcm5719-llvm-1e051aab0cc12bb4a4c1be8d1b1b70537fd0f012.zip
Finally get the test suite passing in C++03!!
After months of work there are only 4 tests still failing in C++03. This patch fixes those tests. All of the libc++ builders should be green. llvm-svn: 246275
Diffstat (limited to 'libcxx')
-rw-r--r--libcxx/test/libcxx/utilities/memory/util.smartptr/race_condition.pass.cpp3
-rw-r--r--libcxx/test/std/experimental/algorithms/alg.search/search.pass.cpp4
-rw-r--r--libcxx/test/std/re/re.alg/re.alg.search/grep.pass.cpp4
-rw-r--r--libcxx/test/std/thread/thread.condition/notify_all_at_thread_exit.pass.cpp4
4 files changed, 12 insertions, 3 deletions
diff --git a/libcxx/test/libcxx/utilities/memory/util.smartptr/race_condition.pass.cpp b/libcxx/test/libcxx/utilities/memory/util.smartptr/race_condition.pass.cpp
index 25dd3119068..fce8443ebd0 100644
--- a/libcxx/test/libcxx/utilities/memory/util.smartptr/race_condition.pass.cpp
+++ b/libcxx/test/libcxx/utilities/memory/util.smartptr/race_condition.pass.cpp
@@ -87,7 +87,8 @@ int main() {
}
{
// Test with in-place shared_count.
- Ptr p = std::make_shared<int>(42);
+ int val = 42;
+ Ptr p = std::make_shared<int>(val);
run_test(p);
assert(p.use_count() == 1);
}
diff --git a/libcxx/test/std/experimental/algorithms/alg.search/search.pass.cpp b/libcxx/test/std/experimental/algorithms/alg.search/search.pass.cpp
index e27f0e43b18..ce27225f284 100644
--- a/libcxx/test/std/experimental/algorithms/alg.search/search.pass.cpp
+++ b/libcxx/test/std/experimental/algorithms/alg.search/search.pass.cpp
@@ -35,9 +35,9 @@ struct MySearcher {
int main() {
typedef int * RI;
- static_assert(std::is_same<RI, decltype(std::experimental::search(RI(), RI(), MySearcher()))>::value, "" );
+ static_assert((std::is_same<RI, decltype(std::experimental::search(RI(), RI(), MySearcher()))>::value), "" );
- RI it{nullptr};
+ RI it(nullptr);
assert(it == std::experimental::search(it, it, MySearcher()));
assert(searcher_called == 1);
}
diff --git a/libcxx/test/std/re/re.alg/re.alg.search/grep.pass.cpp b/libcxx/test/std/re/re.alg/re.alg.search/grep.pass.cpp
index fbeddd04e92..a26f81eab52 100644
--- a/libcxx/test/std/re/re.alg/re.alg.search/grep.pass.cpp
+++ b/libcxx/test/std/re/re.alg/re.alg.search/grep.pass.cpp
@@ -19,6 +19,7 @@
#include <regex>
#include <cassert>
+#include "test_macros.h"
#include "test_iterators.h"
extern "C" void LLVMFuzzerTestOneInput(const char *data)
@@ -40,7 +41,10 @@ extern "C" void LLVMFuzzerTestOneInput(const char *data)
void fuzz_tests() // patterns that the fuzzer has found
{
+// Raw string literals are a C++11
+#if TEST_STD_VER >= 11
LLVMFuzzerTestOneInput(R"XX(Õ)_%()()((\8'_%()_%()_%()_%(()_%()_%()_%(.t;)()¥f()_%()(.)_%;)()!¥f(((()()XX");
+#endif
}
int main()
diff --git a/libcxx/test/std/thread/thread.condition/notify_all_at_thread_exit.pass.cpp b/libcxx/test/std/thread/thread.condition/notify_all_at_thread_exit.pass.cpp
index 3292d8bdc57..02da345cb7d 100644
--- a/libcxx/test/std/thread/thread.condition/notify_all_at_thread_exit.pass.cpp
+++ b/libcxx/test/std/thread/thread.condition/notify_all_at_thread_exit.pass.cpp
@@ -9,6 +9,10 @@
//
// UNSUPPORTED: libcpp-has-no-threads
+// notify_all_at_thread_exit(...) requires move semantics to transfer the
+// unique_lock.
+// UNSUPPORTED: c++98, c++03
+
// <condition_variable>
// void
OpenPOWER on IntegriCloud