diff options
author | JF Bastien <jfbastien@apple.com> | 2019-02-04 20:31:13 +0000 |
---|---|---|
committer | JF Bastien <jfbastien@apple.com> | 2019-02-04 20:31:13 +0000 |
commit | 2df59c50688c122bbcae7467d3eaf862c3ea3088 (patch) | |
tree | 29c9a3e1c54fe76a506ffecc0cc4d8fbaba5cb04 /libcxx/test/std/thread | |
parent | 6fd4e7fe0258ff71fe759535236883ea9060587c (diff) | |
download | bcm5719-llvm-2df59c50688c122bbcae7467d3eaf862c3ea3088.tar.gz bcm5719-llvm-2df59c50688c122bbcae7467d3eaf862c3ea3088.zip |
Support tests in freestanding
Summary:
Freestanding is *weird*. The standard allows it to differ in a bunch of odd
manners from regular C++, and the committee would like to improve that
situation. I'd like to make libc++ behave better with what freestanding should
be, so that it can be a tool we use in improving the standard. To do that we
need to try stuff out, both with "freestanding the language mode" and
"freestanding the library subset".
Let's start with the super basic: run the libc++ tests in freestanding, using
clang as the compiler, and see what works. The easiest hack to do this:
In utils/libcxx/test/config.py add:
self.cxx.compile_flags += ['-ffreestanding']
Run the tests and they all fail.
Why? Because in freestanding `main` isn't special. This "not special" property
has two effects: main doesn't get mangled, and main isn't allowed to omit its
`return` statement. The first means main gets mangled and the linker can't
create a valid executable for us to test. The second means we spew out warnings
(ew) and the compiler doesn't insert the `return` we omitted, and main just
falls of the end and does whatever undefined behavior (if you're luck, ud2
leading to non-zero return code).
Let's start my work with the basics. This patch changes all libc++ tests to
declare `main` as `int main(int, char**` so it mangles consistently (enabling us
to declare another `extern "C"` main for freestanding which calls the mangled
one), and adds `return 0;` to all places where it was missing. This touches 6124
files, and I apologize.
The former was done with The Magic Of Sed.
The later was done with a (not quite correct but decent) clang tool:
https://gist.github.com/jfbastien/793819ff360baa845483dde81170feed
This works for most tests, though I did have to adjust a few places when e.g.
the test runs with `-x c`, macros are used for main (such as for the filesystem
tests), etc.
Once this is in we can create a freestanding bot which will prevent further
regressions. After that, we can start the real work of supporting C++
freestanding fairly well in libc++.
<rdar://problem/47754795>
Reviewers: ldionne, mclow.lists, EricWF
Subscribers: christof, jkorous, dexonsmith, arphaman, miyuki, libcxx-commits
Differential Revision: https://reviews.llvm.org/D57624
llvm-svn: 353086
Diffstat (limited to 'libcxx/test/std/thread')
260 files changed, 779 insertions, 260 deletions
diff --git a/libcxx/test/std/thread/futures/futures.async/async.fail.cpp b/libcxx/test/std/thread/futures/futures.async/async.fail.cpp index f93c3ef20ff..3e7fb80e0e1 100644 --- a/libcxx/test/std/thread/futures/futures.async/async.fail.cpp +++ b/libcxx/test/std/thread/futures/futures.async/async.fail.cpp @@ -30,8 +30,10 @@ int foo (int x) { return x; } -int main () +int main(int, char**) { std::async( foo, 3); // expected-error {{ignoring return value of function declared with 'nodiscard' attribute}} std::async(std::launch::async, foo, 3); // expected-error {{ignoring return value of function declared with 'nodiscard' attribute}} + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.async/async.pass.cpp b/libcxx/test/std/thread/futures/futures.async/async.pass.cpp index 1083cb47d44..225b63ec889 100644 --- a/libcxx/test/std/thread/futures/futures.async/async.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.async/async.pass.cpp @@ -102,7 +102,7 @@ void test(CheckLamdba&& getAndCheckFn, bool IsDeferred, Args&&... args) { } } -int main() +int main(int, char**) { // The default launch policy is implementation defined. libc++ defines // it to be std::launch::async. @@ -151,4 +151,5 @@ int main() try { f.get(); assert (false); } catch ( int ) {} } #endif + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.async/async_race.38682.pass.cpp b/libcxx/test/std/thread/futures/futures.async/async_race.38682.pass.cpp index 6e115f00404..826704a75d3 100644 --- a/libcxx/test/std/thread/futures/futures.async/async_race.38682.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.async/async_race.38682.pass.cpp @@ -38,7 +38,7 @@ static int& worker_ref(int& i) { return i; } static void worker_void() { } -int main() { +int main(int, char**) { // future<T> { std::vector<int> const v{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; @@ -65,4 +65,6 @@ int main() { fut.get(); } } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.async/async_race.pass.cpp b/libcxx/test/std/thread/futures/futures.async/async_race.pass.cpp index 62e09723e9e..9da57e38ae9 100644 --- a/libcxx/test/std/thread/futures/futures.async/async_race.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.async/async_race.pass.cpp @@ -62,6 +62,8 @@ void test_each() { } } -int main() { +int main(int, char**) { for (int i=0; i < 25; ++i) test_each(); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.errors/default_error_condition.pass.cpp b/libcxx/test/std/thread/futures/futures.errors/default_error_condition.pass.cpp index 1676d4babae..fbb7eb13d92 100644 --- a/libcxx/test/std/thread/futures/futures.errors/default_error_condition.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.errors/default_error_condition.pass.cpp @@ -17,10 +17,12 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { const std::error_category& e_cat = std::future_category(); std::error_condition e_cond = e_cat.default_error_condition(static_cast<int>(std::errc::not_a_directory)); assert(e_cond.category() == e_cat); assert(e_cond.value() == static_cast<int>(std::errc::not_a_directory)); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.errors/equivalent_error_code_int.pass.cpp b/libcxx/test/std/thread/futures/futures.errors/equivalent_error_code_int.pass.cpp index cb3f8139367..3ba3410942d 100644 --- a/libcxx/test/std/thread/futures/futures.errors/equivalent_error_code_int.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.errors/equivalent_error_code_int.pass.cpp @@ -17,9 +17,11 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { const std::error_category& e_cat = std::future_category(); assert(e_cat.equivalent(std::error_code(5, e_cat), 5)); assert(!e_cat.equivalent(std::error_code(5, e_cat), 6)); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.errors/equivalent_int_error_condition.pass.cpp b/libcxx/test/std/thread/futures/futures.errors/equivalent_int_error_condition.pass.cpp index f39de5b11f7..9d0e1cf31ba 100644 --- a/libcxx/test/std/thread/futures/futures.errors/equivalent_int_error_condition.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.errors/equivalent_int_error_condition.pass.cpp @@ -17,10 +17,12 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { const std::error_category& e_cat = std::future_category(); std::error_condition e_cond = e_cat.default_error_condition(5); assert(e_cat.equivalent(5, e_cond)); assert(!e_cat.equivalent(6, e_cond)); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.errors/future_category.pass.cpp b/libcxx/test/std/thread/futures/futures.errors/future_category.pass.cpp index e9e784c28d1..7b9d7234425 100644 --- a/libcxx/test/std/thread/futures/futures.errors/future_category.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.errors/future_category.pass.cpp @@ -16,8 +16,10 @@ #include <cstring> #include <cassert> -int main() +int main(int, char**) { const std::error_category& ec = std::future_category(); assert(std::strcmp(ec.name(), "future") == 0); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.errors/make_error_code.pass.cpp b/libcxx/test/std/thread/futures/futures.errors/make_error_code.pass.cpp index 9e39585c846..d9e50bf42d3 100644 --- a/libcxx/test/std/thread/futures/futures.errors/make_error_code.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.errors/make_error_code.pass.cpp @@ -17,11 +17,13 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { { std::error_code ec = make_error_code(std::future_errc::broken_promise); assert(ec.value() == static_cast<int>(std::future_errc::broken_promise)); assert(ec.category() == std::future_category()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.errors/make_error_condition.pass.cpp b/libcxx/test/std/thread/futures/futures.errors/make_error_condition.pass.cpp index f8cbbdedbde..d0555910246 100644 --- a/libcxx/test/std/thread/futures/futures.errors/make_error_condition.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.errors/make_error_condition.pass.cpp @@ -17,7 +17,7 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { { const std::error_condition ec1 = @@ -26,4 +26,6 @@ int main() static_cast<int>(std::future_errc::future_already_retrieved)); assert(ec1.category() == std::future_category()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.future_error/code.pass.cpp b/libcxx/test/std/thread/futures/futures.future_error/code.pass.cpp index 63769f018b7..53acba393fb 100644 --- a/libcxx/test/std/thread/futures/futures.future_error/code.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.future_error/code.pass.cpp @@ -21,7 +21,7 @@ #include "test_macros.h" -int main() +int main(int, char**) { { std::error_code ec = std::make_error_code(std::future_errc::broken_promise); @@ -53,4 +53,6 @@ int main() assert(f.code() == std::make_error_code(std::future_errc::no_state)); } #endif + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.future_error/types.pass.cpp b/libcxx/test/std/thread/futures/futures.future_error/types.pass.cpp index 911f562e510..edf18ba5a9a 100644 --- a/libcxx/test/std/thread/futures/futures.future_error/types.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.future_error/types.pass.cpp @@ -15,8 +15,10 @@ #include <future> #include <type_traits> -int main() +int main(int, char**) { static_assert((std::is_convertible<std::future_error*, std::logic_error*>::value), ""); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.future_error/what.pass.cpp b/libcxx/test/std/thread/futures/futures.future_error/what.pass.cpp index bae25af1fab..468aeb85bec 100644 --- a/libcxx/test/std/thread/futures/futures.future_error/what.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.future_error/what.pass.cpp @@ -29,7 +29,7 @@ #include "test_macros.h" -int main() +int main(int, char**) { { std::future_error f(std::make_error_code(std::future_errc::broken_promise)); @@ -50,4 +50,6 @@ int main() LIBCPP_ASSERT(std::strcmp(f.what(), "Operation not permitted on an object without " "an associated state.") == 0); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.overview/future_errc.pass.cpp b/libcxx/test/std/thread/futures/futures.overview/future_errc.pass.cpp index 383407d1328..d7840f45ce6 100644 --- a/libcxx/test/std/thread/futures/futures.overview/future_errc.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.overview/future_errc.pass.cpp @@ -23,7 +23,7 @@ #include <future> -int main() +int main(int, char**) { static_assert(std::future_errc::broken_promise != std::future_errc::future_already_retrieved, ""); static_assert(std::future_errc::broken_promise != std::future_errc::promise_already_satisfied, ""); @@ -36,4 +36,6 @@ int main() static_assert(std::future_errc::future_already_retrieved != static_cast<std::future_errc>(0), ""); static_assert(std::future_errc::promise_already_satisfied != static_cast<std::future_errc>(0), ""); static_assert(std::future_errc::no_state != static_cast<std::future_errc>(0), ""); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.overview/future_status.pass.cpp b/libcxx/test/std/thread/futures/futures.overview/future_status.pass.cpp index 23c5bac06b7..ceff64f7ebb 100644 --- a/libcxx/test/std/thread/futures/futures.overview/future_status.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.overview/future_status.pass.cpp @@ -19,9 +19,11 @@ #include <future> -int main() +int main(int, char**) { static_assert(static_cast<int>(std::future_status::ready) == 0, ""); static_assert(static_cast<int>(std::future_status::timeout) == 1, ""); static_assert(static_cast<int>(std::future_status::deferred) == 2, ""); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.overview/is_error_code_enum_future_errc.pass.cpp b/libcxx/test/std/thread/futures/futures.overview/is_error_code_enum_future_errc.pass.cpp index f8a0d8a6492..c7e2c2aebaa 100644 --- a/libcxx/test/std/thread/futures/futures.overview/is_error_code_enum_future_errc.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.overview/is_error_code_enum_future_errc.pass.cpp @@ -15,10 +15,12 @@ #include <future> #include "test_macros.h" -int main() +int main(int, char**) { static_assert(std::is_error_code_enum <std::future_errc>::value, ""); #if TEST_STD_VER > 14 static_assert(std::is_error_code_enum_v<std::future_errc>, ""); #endif + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.overview/launch.pass.cpp b/libcxx/test/std/thread/futures/futures.overview/launch.pass.cpp index 0ed166028c4..6d405b508ed 100644 --- a/libcxx/test/std/thread/futures/futures.overview/launch.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.overview/launch.pass.cpp @@ -22,7 +22,7 @@ #include "test_macros.h" -int main() +int main(int, char**) { #ifdef _LIBCPP_HAS_NO_STRONG_ENUMS LIBCPP_STATIC_ASSERT(static_cast<int>(std::launch::any) == @@ -43,4 +43,6 @@ int main() #endif static_assert(static_cast<int>(std::launch::async) == 1, ""); static_assert(static_cast<int>(std::launch::deferred) == 2, ""); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/alloc_ctor.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/alloc_ctor.pass.cpp index 1ad295220af..ece8b94a563 100644 --- a/libcxx/test/std/thread/futures/futures.promise/alloc_ctor.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/alloc_ctor.pass.cpp @@ -22,7 +22,7 @@ #include "test_allocator.h" #include "min_allocator.h" -int main() +int main(int, char**) { assert(test_alloc_base::alloc_count == 0); { @@ -81,4 +81,6 @@ int main() std::future<void> f = p.get_future(); assert(f.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/copy_assign.fail.cpp b/libcxx/test/std/thread/futures/futures.promise/copy_assign.fail.cpp index 895ccf7fd5b..bf46a6847cb 100644 --- a/libcxx/test/std/thread/futures/futures.promise/copy_assign.fail.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/copy_assign.fail.cpp @@ -18,7 +18,7 @@ #include "test_macros.h" -int main() +int main(int, char**) { #if TEST_STD_VER >= 11 { @@ -47,4 +47,6 @@ int main() p = p0; // expected-error {{'operator=' is a private member of 'std::__1::promise<void>'}} } #endif + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/copy_ctor.fail.cpp b/libcxx/test/std/thread/futures/futures.promise/copy_ctor.fail.cpp index 00af4af49ce..8f90f3da7fe 100644 --- a/libcxx/test/std/thread/futures/futures.promise/copy_ctor.fail.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/copy_ctor.fail.cpp @@ -18,7 +18,7 @@ #include "test_macros.h" -int main() +int main(int, char**) { #if TEST_STD_VER >= 11 { @@ -47,4 +47,6 @@ int main() std::promise<void> p(p0); // expected-error {{calling a private constructor of class 'std::__1::promise<void>'}} } #endif + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/default.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/default.pass.cpp index f0e3a786d6c..600f99dd992 100644 --- a/libcxx/test/std/thread/futures/futures.promise/default.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/default.pass.cpp @@ -18,7 +18,7 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { { std::promise<int> p; @@ -35,4 +35,6 @@ int main() std::future<void> f = p.get_future(); assert(f.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/dtor.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/dtor.pass.cpp index 4d3bd9cb988..49c4b4685db 100644 --- a/libcxx/test/std/thread/futures/futures.promise/dtor.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/dtor.pass.cpp @@ -20,7 +20,7 @@ #include "test_macros.h" -int main() +int main(int, char**) { { typedef int T; @@ -123,4 +123,6 @@ int main() } } #endif + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/get_future.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/get_future.pass.cpp index 3805a96d04a..6385f6345de 100644 --- a/libcxx/test/std/thread/futures/futures.promise/get_future.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/get_future.pass.cpp @@ -20,7 +20,7 @@ #include "test_macros.h" -int main() +int main(int, char**) { { std::promise<double> p; @@ -56,4 +56,6 @@ int main() } } #endif + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/move_assign.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/move_assign.pass.cpp index 46860fbe840..6592e0bb881 100644 --- a/libcxx/test/std/thread/futures/futures.promise/move_assign.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/move_assign.pass.cpp @@ -21,7 +21,7 @@ #include "test_macros.h" #include "test_allocator.h" -int main() +int main(int, char**) { assert(test_alloc_base::alloc_count == 0); { @@ -93,4 +93,6 @@ int main() assert(test_alloc_base::alloc_count == 1); } assert(test_alloc_base::alloc_count == 0); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/move_ctor.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/move_ctor.pass.cpp index d119b188df1..1551420e978 100644 --- a/libcxx/test/std/thread/futures/futures.promise/move_ctor.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/move_ctor.pass.cpp @@ -21,7 +21,7 @@ #include "test_macros.h" #include "test_allocator.h" -int main() +int main(int, char**) { assert(test_alloc_base::alloc_count == 0); { @@ -87,4 +87,6 @@ int main() #endif } assert(test_alloc_base::alloc_count == 0); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/set_exception.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/set_exception.pass.cpp index bb763e9ac51..030620ad43f 100644 --- a/libcxx/test/std/thread/futures/futures.promise/set_exception.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/set_exception.pass.cpp @@ -19,7 +19,7 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { { typedef int T; @@ -45,4 +45,6 @@ int main() assert(e.code() == make_error_code(std::future_errc::promise_already_satisfied)); } } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/set_exception_at_thread_exit.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/set_exception_at_thread_exit.pass.cpp index c464d083bb5..a1a32882bee 100644 --- a/libcxx/test/std/thread/futures/futures.promise/set_exception_at_thread_exit.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/set_exception_at_thread_exit.pass.cpp @@ -24,7 +24,7 @@ void func(std::promise<int> p) p.set_exception_at_thread_exit(std::make_exception_ptr(3)); } -int main() +int main(int, char**) { { typedef int T; @@ -41,4 +41,6 @@ int main() assert(i == 3); } } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/set_lvalue.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/set_lvalue.pass.cpp index 9b72e480371..db8bb5704c5 100644 --- a/libcxx/test/std/thread/futures/futures.promise/set_lvalue.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/set_lvalue.pass.cpp @@ -20,7 +20,7 @@ #include "test_macros.h" -int main() +int main(int, char**) { { typedef int& T; @@ -44,4 +44,6 @@ int main() } #endif } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/set_lvalue_at_thread_exit.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/set_lvalue_at_thread_exit.pass.cpp index 0fa28031dd0..9c3b09086b3 100644 --- a/libcxx/test/std/thread/futures/futures.promise/set_lvalue_at_thread_exit.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/set_lvalue_at_thread_exit.pass.cpp @@ -27,7 +27,7 @@ void func(std::promise<int&> p) i = 4; } -int main() +int main(int, char**) { { std::promise<int&> p; @@ -35,4 +35,6 @@ int main() std::thread(func, std::move(p)).detach(); assert(f.get() == 4); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/set_rvalue.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/set_rvalue.pass.cpp index d0f2bda4378..7f54baa8cec 100644 --- a/libcxx/test/std/thread/futures/futures.promise/set_rvalue.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/set_rvalue.pass.cpp @@ -26,7 +26,7 @@ struct A A(A&&) {throw 9;} }; -int main() +int main(int, char**) { { typedef std::unique_ptr<int> T; @@ -60,4 +60,6 @@ int main() assert(j == 9); } } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/set_rvalue_at_thread_exit.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/set_rvalue_at_thread_exit.pass.cpp index a5574238da5..bddd6613556 100644 --- a/libcxx/test/std/thread/futures/futures.promise/set_rvalue_at_thread_exit.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/set_rvalue_at_thread_exit.pass.cpp @@ -23,7 +23,7 @@ void func(std::promise<std::unique_ptr<int>> p) p.set_value_at_thread_exit(std::unique_ptr<int>(new int(5))); } -int main() +int main(int, char**) { { std::promise<std::unique_ptr<int>> p; @@ -31,4 +31,6 @@ int main() std::thread(func, std::move(p)).detach(); assert(*f.get() == 5); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/set_value_at_thread_exit_const.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/set_value_at_thread_exit_const.pass.cpp index 4760611771a..9258a001149 100644 --- a/libcxx/test/std/thread/futures/futures.promise/set_value_at_thread_exit_const.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/set_value_at_thread_exit_const.pass.cpp @@ -24,7 +24,7 @@ void func(std::promise<int> p) p.set_value_at_thread_exit(i); } -int main() +int main(int, char**) { { std::promise<int> p; @@ -32,4 +32,6 @@ int main() std::thread(func, std::move(p)).detach(); assert(f.get() == 5); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/set_value_at_thread_exit_void.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/set_value_at_thread_exit_void.pass.cpp index e2b8ae9a5da..1a204421ee9 100644 --- a/libcxx/test/std/thread/futures/futures.promise/set_value_at_thread_exit_void.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/set_value_at_thread_exit_void.pass.cpp @@ -27,7 +27,7 @@ void func(std::promise<void> p) i = 1; } -int main() +int main(int, char**) { { std::promise<void> p; @@ -36,4 +36,6 @@ int main() f.get(); assert(i == 1); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/set_value_const.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/set_value_const.pass.cpp index 942481542f9..e58d2d24588 100644 --- a/libcxx/test/std/thread/futures/futures.promise/set_value_const.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/set_value_const.pass.cpp @@ -28,7 +28,7 @@ struct A } }; -int main() +int main(int, char**) { { typedef int T; @@ -68,4 +68,6 @@ int main() } #endif } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/set_value_void.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/set_value_void.pass.cpp index 330d5b02508..d505b3aabf4 100644 --- a/libcxx/test/std/thread/futures/futures.promise/set_value_void.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/set_value_void.pass.cpp @@ -19,7 +19,7 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { { typedef void T; @@ -37,4 +37,6 @@ int main() assert(e.code() == make_error_code(std::future_errc::promise_already_satisfied)); } } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/swap.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/swap.pass.cpp index ec72f8794b0..2b78b1d384b 100644 --- a/libcxx/test/std/thread/futures/futures.promise/swap.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/swap.pass.cpp @@ -22,7 +22,7 @@ #include "test_allocator.h" -int main() +int main(int, char**) { assert(test_alloc_base::alloc_count == 0); { @@ -81,4 +81,6 @@ int main() assert(test_alloc_base::alloc_count == 1); } assert(test_alloc_base::alloc_count == 0); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.promise/uses_allocator.pass.cpp b/libcxx/test/std/thread/futures/futures.promise/uses_allocator.pass.cpp index 928ede9fb83..1a5028bce3a 100644 --- a/libcxx/test/std/thread/futures/futures.promise/uses_allocator.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.promise/uses_allocator.pass.cpp @@ -19,9 +19,11 @@ #include <future> #include "test_allocator.h" -int main() +int main(int, char**) { static_assert((std::uses_allocator<std::promise<int>, test_allocator<int> >::value), ""); static_assert((std::uses_allocator<std::promise<int&>, test_allocator<int> >::value), ""); static_assert((std::uses_allocator<std::promise<void>, test_allocator<void> >::value), ""); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.shared_future/copy_assign.pass.cpp b/libcxx/test/std/thread/futures/futures.shared_future/copy_assign.pass.cpp index 44c538c972e..e5cc33a0c94 100644 --- a/libcxx/test/std/thread/futures/futures.shared_future/copy_assign.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.shared_future/copy_assign.pass.cpp @@ -21,7 +21,7 @@ #include "test_macros.h" -int main() +int main(int, char**) { { typedef int T; @@ -77,4 +77,6 @@ int main() assert(!f0.valid()); assert(!f.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.shared_future/copy_ctor.pass.cpp b/libcxx/test/std/thread/futures/futures.shared_future/copy_ctor.pass.cpp index 2878c40d10b..01b5572e3f3 100644 --- a/libcxx/test/std/thread/futures/futures.shared_future/copy_ctor.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.shared_future/copy_ctor.pass.cpp @@ -21,7 +21,7 @@ #include "test_macros.h" -int main() +int main(int, char**) { { typedef int T; @@ -71,4 +71,6 @@ int main() assert(!f0.valid()); assert(!f.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.shared_future/ctor_future.pass.cpp b/libcxx/test/std/thread/futures/futures.shared_future/ctor_future.pass.cpp index 10b84a4118a..b75450cb9e9 100644 --- a/libcxx/test/std/thread/futures/futures.shared_future/ctor_future.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.shared_future/ctor_future.pass.cpp @@ -18,7 +18,7 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { { typedef int T; @@ -65,4 +65,6 @@ int main() assert(!f0.valid()); assert(!f.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.shared_future/default.pass.cpp b/libcxx/test/std/thread/futures/futures.shared_future/default.pass.cpp index 2229ee58e3d..0387b97a70c 100644 --- a/libcxx/test/std/thread/futures/futures.shared_future/default.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.shared_future/default.pass.cpp @@ -17,7 +17,7 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { { std::shared_future<int> f; @@ -31,4 +31,6 @@ int main() std::shared_future<void> f; assert(!f.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.shared_future/dtor.pass.cpp b/libcxx/test/std/thread/futures/futures.shared_future/dtor.pass.cpp index 964180b9898..fe49c2208ee 100644 --- a/libcxx/test/std/thread/futures/futures.shared_future/dtor.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.shared_future/dtor.pass.cpp @@ -21,7 +21,7 @@ #include "test_allocator.h" -int main() +int main(int, char**) { assert(test_alloc_base::alloc_count == 0); { @@ -66,4 +66,6 @@ int main() assert(f.valid()); } assert(test_alloc_base::alloc_count == 0); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.shared_future/get.pass.cpp b/libcxx/test/std/thread/futures/futures.shared_future/get.pass.cpp index b7767b379ac..038ca71510f 100644 --- a/libcxx/test/std/thread/futures/futures.shared_future/get.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.shared_future/get.pass.cpp @@ -61,7 +61,7 @@ void func6(std::promise<void> p) p.set_exception(std::make_exception_ptr('c')); } -int main() +int main(int, char**) { { typedef int T; @@ -150,4 +150,6 @@ int main() } #endif } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.shared_future/move_assign.pass.cpp b/libcxx/test/std/thread/futures/futures.shared_future/move_assign.pass.cpp index b68ee6921de..3940530528d 100644 --- a/libcxx/test/std/thread/futures/futures.shared_future/move_assign.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.shared_future/move_assign.pass.cpp @@ -18,7 +18,7 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { { typedef int T; @@ -71,4 +71,6 @@ int main() assert(!f0.valid()); assert(!f.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.shared_future/move_ctor.pass.cpp b/libcxx/test/std/thread/futures/futures.shared_future/move_ctor.pass.cpp index c2b52dc1b18..e1d982d0ee1 100644 --- a/libcxx/test/std/thread/futures/futures.shared_future/move_ctor.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.shared_future/move_ctor.pass.cpp @@ -18,7 +18,7 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { { typedef int T; @@ -65,4 +65,6 @@ int main() assert(!f0.valid()); assert(!f.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.shared_future/wait.pass.cpp b/libcxx/test/std/thread/futures/futures.shared_future/wait.pass.cpp index 11dc4ba3d13..f78ca6bfc42 100644 --- a/libcxx/test/std/thread/futures/futures.shared_future/wait.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.shared_future/wait.pass.cpp @@ -39,7 +39,7 @@ void func5(std::promise<void> p) p.set_value(); } -int main() +int main(int, char**) { typedef std::chrono::high_resolution_clock Clock; typedef std::chrono::duration<double, std::milli> ms; @@ -85,4 +85,6 @@ int main() assert(f.valid()); assert(t1-t0 < ms(5)); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.shared_future/wait_for.pass.cpp b/libcxx/test/std/thread/futures/futures.shared_future/wait_for.pass.cpp index 4fbd8ae7977..913127af327 100644 --- a/libcxx/test/std/thread/futures/futures.shared_future/wait_for.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.shared_future/wait_for.pass.cpp @@ -43,7 +43,7 @@ void func5(std::promise<void> p) p.set_value(); } -int main() +int main(int, char**) { typedef std::chrono::high_resolution_clock Clock; { @@ -94,4 +94,6 @@ int main() assert(f.valid()); assert(t1-t0 < ms(5)); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.shared_future/wait_until.pass.cpp b/libcxx/test/std/thread/futures/futures.shared_future/wait_until.pass.cpp index 02b0ce716e0..09787fedc3a 100644 --- a/libcxx/test/std/thread/futures/futures.shared_future/wait_until.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.shared_future/wait_until.pass.cpp @@ -62,7 +62,7 @@ void func5(std::promise<void> p) set_worker_thread_state(WorkerThreadState::Exiting); } -int main() +int main(int, char**) { typedef std::chrono::high_resolution_clock Clock; { @@ -128,4 +128,6 @@ int main() assert(f.valid()); assert(t1-t0 < ms(5)); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.state/nothing_to_do.pass.cpp b/libcxx/test/std/thread/futures/futures.state/nothing_to_do.pass.cpp index 02fe32ece48..779762e7e99 100644 --- a/libcxx/test/std/thread/futures/futures.state/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.state/nothing_to_do.pass.cpp @@ -7,6 +7,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/assign_copy.fail.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/assign_copy.fail.cpp index b14f2381a8d..a8b8581893d 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/assign_copy.fail.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/assign_copy.fail.cpp @@ -17,10 +17,12 @@ #include <future> -int main() +int main(int, char**) { { std::packaged_task<double(int, char)> p0, p; p = p0; // expected-error {{overload resolution selected deleted operator '='}} } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/assign_move.pass.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/assign_move.pass.cpp index 655a9d7f8da..9da7a96e241 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/assign_move.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/assign_move.pass.cpp @@ -28,7 +28,7 @@ public: long operator()(long i, long j) const {return data_ + i + j;} }; -int main() +int main(int, char**) { { std::packaged_task<double(int, char)> p0(A(5)); @@ -47,4 +47,6 @@ int main() assert(!p0.valid()); assert(!p.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor1.fail.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor1.fail.cpp index fbe3b55a81d..ec081dc328e 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor1.fail.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor1.fail.cpp @@ -25,11 +25,13 @@ typedef std::packaged_task<A(int, char)> PT; typedef volatile std::packaged_task<A(int, char)> VPT; -int main() +int main(int, char**) { VPT init{}; auto const& c_init = init; PT p1{init}; // expected-error {{no matching constructor}} PT p2{c_init}; // expected-error {{no matching constructor}} PT p3{std::move(init)}; // expected-error {{no matching constructor for initialization of 'PT' (aka 'packaged_task<A (int, char)>')}} + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor2.fail.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor2.fail.cpp index cae4e1afd45..76273a3eaa7 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor2.fail.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor2.fail.cpp @@ -26,8 +26,10 @@ struct A {}; typedef std::packaged_task<A(int, char)> PT; typedef volatile std::packaged_task<A(int, char)> VPT; -int main() +int main(int, char**) { PT p { std::allocator_arg_t{}, test_allocator<A>{}, VPT {}}; // expected-error {{no matching constructor for initialization of 'PT' (aka 'packaged_task<A (int, char)>')}} // expected-note-re@future:* 1 {{candidate template ignored: {{(disabled by 'enable_if')|(requirement '.*' was not satisfied)}}}} + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_copy.fail.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_copy.fail.cpp index 6416df4de91..0816a1cc5b6 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_copy.fail.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_copy.fail.cpp @@ -18,10 +18,12 @@ #include <future> -int main() +int main(int, char**) { { std::packaged_task<double(int, char)> p0; std::packaged_task<double(int, char)> p(p0); // expected-error {{call to deleted constructor of 'std::packaged_task<double (int, char)>'}} } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_default.pass.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_default.pass.cpp index 30c45eaab51..5472c717adc 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_default.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_default.pass.cpp @@ -20,8 +20,10 @@ struct A {}; -int main() +int main(int, char**) { std::packaged_task<A(int, char)> p; assert(!p.valid()); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_func.pass.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_func.pass.cpp index 3da276ba8c3..20ee8b4b4d2 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_func.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_func.pass.cpp @@ -39,7 +39,7 @@ int A::n_copies = 0; int func(int i) { return i; } -int main() +int main(int, char**) { { std::packaged_task<double(int, char)> p(A(5)); @@ -76,4 +76,6 @@ int main() p(4); assert(f.get() == 4); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_func_alloc.pass.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_func_alloc.pass.cpp index 334ed8f9806..766987ce0df 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_func_alloc.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_func_alloc.pass.cpp @@ -44,7 +44,7 @@ int A::n_copies = 0; int func(int i) { return i; } -int main() +int main(int, char**) { { std::packaged_task<double(int, char)> p(std::allocator_arg, @@ -123,4 +123,6 @@ int main() } A::n_copies = 0; A::n_moves = 0; + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_move.pass.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_move.pass.cpp index e2e44473ef2..c517182d3ad 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_move.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor_move.pass.cpp @@ -28,7 +28,7 @@ public: long operator()(long i, long j) const {return data_ + i + j;} }; -int main() +int main(int, char**) { { std::packaged_task<double(int, char)> p0(A(5)); @@ -45,4 +45,6 @@ int main() assert(!p0.valid()); assert(!p.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/dtor.pass.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/dtor.pass.cpp index e910d7c4ce8..3b794b7f6c9 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/dtor.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/dtor.pass.cpp @@ -39,7 +39,7 @@ void func2(std::packaged_task<double(int, char)> p) p(3, 'a'); } -int main() +int main(int, char**) { #ifndef TEST_HAS_NO_EXCEPTIONS { @@ -64,4 +64,6 @@ int main() std::thread(func2, std::move(p)).detach(); assert(f.get() == 105.0); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/get_future.pass.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/get_future.pass.cpp index a4c9c7af490..8713db0a7e8 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/get_future.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/get_future.pass.cpp @@ -30,7 +30,7 @@ public: long operator()(long i, long j) const {return data_ + i + j;} }; -int main() +int main(int, char**) { { std::packaged_task<double(int, char)> p(A(5)); @@ -65,4 +65,6 @@ int main() } } #endif + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/make_ready_at_thread_exit.pass.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/make_ready_at_thread_exit.pass.cpp index 21a567ca0bd..47009952298 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/make_ready_at_thread_exit.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/make_ready_at_thread_exit.pass.cpp @@ -80,7 +80,7 @@ void func3(std::packaged_task<double(int, char)> p) #endif } -int main() +int main(int, char**) { { std::packaged_task<double(int, char)> p(A(5)); @@ -115,4 +115,6 @@ int main() t.join(); } #endif + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/operator.pass.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/operator.pass.cpp index e148ddfc97a..536888057a9 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/operator.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/operator.pass.cpp @@ -80,7 +80,7 @@ void func3(std::packaged_task<double(int, char)> p) #endif } -int main() +int main(int, char**) { { std::packaged_task<double(int, char)> p(A(5)); @@ -116,4 +116,6 @@ int main() t.join(); } #endif + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/reset.pass.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/reset.pass.cpp index 7e4dd5522ca..e9f59cdfe3c 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/reset.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/reset.pass.cpp @@ -33,7 +33,7 @@ public: } }; -int main() +int main(int, char**) { { std::packaged_task<double(int, char)> p(A(5)); @@ -59,4 +59,6 @@ int main() } } #endif + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.members/swap.pass.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.members/swap.pass.cpp index 22e680f2aca..2cd97900df7 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.members/swap.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.members/swap.pass.cpp @@ -28,7 +28,7 @@ public: long operator()(long i, long j) const {return data_ + i + j;} }; -int main() +int main(int, char**) { { std::packaged_task<double(int, char)> p0(A(5)); @@ -47,4 +47,6 @@ int main() assert(!p0.valid()); assert(!p.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.nonmembers/swap.pass.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.nonmembers/swap.pass.cpp index b344398fe52..8c1c19eca62 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.nonmembers/swap.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.nonmembers/swap.pass.cpp @@ -30,7 +30,7 @@ public: long operator()(long i, long j) const {return data_ + i + j;} }; -int main() +int main(int, char**) { { std::packaged_task<double(int, char)> p0(A(5)); @@ -49,4 +49,6 @@ int main() assert(!p0.valid()); assert(!p.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.task/futures.task.nonmembers/uses_allocator.pass.cpp b/libcxx/test/std/thread/futures/futures.task/futures.task.nonmembers/uses_allocator.pass.cpp index 24727b5d32b..5257a7008cd 100644 --- a/libcxx/test/std/thread/futures/futures.task/futures.task.nonmembers/uses_allocator.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.task/futures.task.nonmembers/uses_allocator.pass.cpp @@ -27,7 +27,9 @@ #include <future> #include "test_allocator.h" -int main() +int main(int, char**) { static_assert((std::uses_allocator<std::packaged_task<double(int, char)>, test_allocator<int> >::value), ""); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.unique_future/copy_assign.fail.cpp b/libcxx/test/std/thread/futures/futures.unique_future/copy_assign.fail.cpp index 63e92f02140..3a1a4d6be6c 100644 --- a/libcxx/test/std/thread/futures/futures.unique_future/copy_assign.fail.cpp +++ b/libcxx/test/std/thread/futures/futures.unique_future/copy_assign.fail.cpp @@ -18,7 +18,7 @@ #include "test_macros.h" -int main() +int main(int, char**) { #if TEST_STD_VER >= 11 { @@ -47,4 +47,6 @@ int main() f = f0; // expected-error {{'operator=' is a private member of 'std::__1::future<void>'}} } #endif + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.unique_future/copy_ctor.fail.cpp b/libcxx/test/std/thread/futures/futures.unique_future/copy_ctor.fail.cpp index 0d1a5884b93..4a8b98c1982 100644 --- a/libcxx/test/std/thread/futures/futures.unique_future/copy_ctor.fail.cpp +++ b/libcxx/test/std/thread/futures/futures.unique_future/copy_ctor.fail.cpp @@ -18,7 +18,7 @@ #include "test_macros.h" -int main() +int main(int, char**) { #if TEST_STD_VER >= 11 { @@ -47,4 +47,6 @@ int main() std::future<void> f = f0; // expected-error {{calling a private constructor of class 'std::__1::future<void>'}} } #endif + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.unique_future/default.pass.cpp b/libcxx/test/std/thread/futures/futures.unique_future/default.pass.cpp index 0f11aa33407..60ef645e3c9 100644 --- a/libcxx/test/std/thread/futures/futures.unique_future/default.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.unique_future/default.pass.cpp @@ -17,7 +17,7 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { { std::future<int> f; @@ -31,4 +31,6 @@ int main() std::future<void> f; assert(!f.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.unique_future/dtor.pass.cpp b/libcxx/test/std/thread/futures/futures.unique_future/dtor.pass.cpp index 4105d3f9063..ec27219daff 100644 --- a/libcxx/test/std/thread/futures/futures.unique_future/dtor.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.unique_future/dtor.pass.cpp @@ -21,7 +21,7 @@ #include "test_allocator.h" -int main() +int main(int, char**) { assert(test_alloc_base::alloc_count == 0); { @@ -66,4 +66,6 @@ int main() assert(f.valid()); } assert(test_alloc_base::alloc_count == 0); + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.unique_future/get.pass.cpp b/libcxx/test/std/thread/futures/futures.unique_future/get.pass.cpp index 3d50d896a89..2e3e3264897 100644 --- a/libcxx/test/std/thread/futures/futures.unique_future/get.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.unique_future/get.pass.cpp @@ -61,7 +61,7 @@ void func6(std::promise<void> p) p.set_exception(std::make_exception_ptr('c')); } -int main() +int main(int, char**) { { typedef int T; @@ -150,4 +150,6 @@ int main() } #endif } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.unique_future/move_assign.pass.cpp b/libcxx/test/std/thread/futures/futures.unique_future/move_assign.pass.cpp index 7d2ad6218a2..b0f0e2b5c54 100644 --- a/libcxx/test/std/thread/futures/futures.unique_future/move_assign.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.unique_future/move_assign.pass.cpp @@ -17,7 +17,7 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { { typedef int T; @@ -70,4 +70,6 @@ int main() assert(!f0.valid()); assert(!f.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.unique_future/move_ctor.pass.cpp b/libcxx/test/std/thread/futures/futures.unique_future/move_ctor.pass.cpp index 0b0e4913cf5..aca5dda64f5 100644 --- a/libcxx/test/std/thread/futures/futures.unique_future/move_ctor.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.unique_future/move_ctor.pass.cpp @@ -17,7 +17,7 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { { typedef int T; @@ -64,4 +64,6 @@ int main() assert(!f0.valid()); assert(!f.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.unique_future/share.pass.cpp b/libcxx/test/std/thread/futures/futures.unique_future/share.pass.cpp index 392a43a4763..979f93cccf7 100644 --- a/libcxx/test/std/thread/futures/futures.unique_future/share.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.unique_future/share.pass.cpp @@ -18,7 +18,7 @@ #include <future> #include <cassert> -int main() +int main(int, char**) { { typedef int T; @@ -71,4 +71,6 @@ int main() assert(!f0.valid()); assert(!f.valid()); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.unique_future/wait.pass.cpp b/libcxx/test/std/thread/futures/futures.unique_future/wait.pass.cpp index 0ec23f27ed0..11fc80868f6 100644 --- a/libcxx/test/std/thread/futures/futures.unique_future/wait.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.unique_future/wait.pass.cpp @@ -39,7 +39,7 @@ void func5(std::promise<void> p) p.set_value(); } -int main() +int main(int, char**) { typedef std::chrono::high_resolution_clock Clock; typedef std::chrono::duration<double, std::milli> ms; @@ -85,4 +85,6 @@ int main() assert(f.valid()); assert(t1-t0 < ms(5)); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.unique_future/wait_for.pass.cpp b/libcxx/test/std/thread/futures/futures.unique_future/wait_for.pass.cpp index 5b8a01aaf16..91f962fd18f 100644 --- a/libcxx/test/std/thread/futures/futures.unique_future/wait_for.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.unique_future/wait_for.pass.cpp @@ -43,7 +43,7 @@ void func5(std::promise<void> p) p.set_value(); } -int main() +int main(int, char**) { typedef std::chrono::high_resolution_clock Clock; { @@ -94,4 +94,6 @@ int main() assert(f.valid()); assert(t1-t0 < ms(50)); } + + return 0; } diff --git a/libcxx/test/std/thread/futures/futures.unique_future/wait_until.pass.cpp b/libcxx/test/std/thread/futures/futures.unique_future/wait_until.pass.cpp index 79da1c0e3ee..28d9b638aed 100644 --- a/libcxx/test/std/thread/futures/futures.unique_future/wait_until.pass.cpp +++ b/libcxx/test/std/thread/futures/futures.unique_future/wait_until.pass.cpp @@ -60,7 +60,7 @@ void func5(std::promise<void> p) set_worker_thread_state(WorkerThreadState::Exiting); } -int main() +int main(int, char**) { typedef std::chrono::high_resolution_clock Clock; { @@ -126,4 +126,6 @@ int main() assert(f.valid()); assert(t1-t0 < ms(5)); } + + return 0; } diff --git a/libcxx/test/std/thread/macro.pass.cpp b/libcxx/test/std/thread/macro.pass.cpp index bfae0bbee5e..640db4aaa3e 100644 --- a/libcxx/test/std/thread/macro.pass.cpp +++ b/libcxx/test/std/thread/macro.pass.cpp @@ -14,9 +14,11 @@ #include <thread> -int main() +int main(int, char**) { #ifndef __STDCPP_THREADS__ #error __STDCPP_THREADS__ is not defined #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/cv_status.pass.cpp b/libcxx/test/std/thread/thread.condition/cv_status.pass.cpp index af8a10ada41..af980c3eed3 100644 --- a/libcxx/test/std/thread/thread.condition/cv_status.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/cv_status.pass.cpp @@ -15,8 +15,10 @@ #include <condition_variable> #include <cassert> -int main() +int main(int, char**) { assert(static_cast<int>(std::cv_status::no_timeout) == 0); assert(static_cast<int>(std::cv_status::timeout) == 1); + + return 0; } 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 22fbc98e2a7..9a0e51e3bfc 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 @@ -36,7 +36,7 @@ void func() std::this_thread::sleep_for(ms(300)); } -int main() +int main(int, char**) { std::unique_lock<std::mutex> lk(mut); std::thread t(func); @@ -45,4 +45,6 @@ int main() Clock::time_point t1 = Clock::now(); assert(t1-t0 > ms(250)); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/assign.fail.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/assign.fail.cpp index e308b20e876..a367051fec3 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/assign.fail.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/assign.fail.cpp @@ -15,9 +15,11 @@ #include <condition_variable> #include <cassert> -int main() +int main(int, char**) { std::condition_variable cv0; std::condition_variable cv1; cv1 = cv0; + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/copy.fail.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/copy.fail.cpp index d0c4c653dd3..f9d60765792 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/copy.fail.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/copy.fail.cpp @@ -15,8 +15,10 @@ #include <condition_variable> #include <cassert> -int main() +int main(int, char**) { std::condition_variable cv0; std::condition_variable cv1(cv0); + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/default.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/default.pass.cpp index 879d3c7dcad..aab97f9e14a 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/default.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/default.pass.cpp @@ -17,7 +17,9 @@ #include <condition_variable> #include <cassert> -int main() +int main(int, char**) { std::condition_variable cv; + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/destructor.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/destructor.pass.cpp index 85c83f92ac8..6550109fd79 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/destructor.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/destructor.pass.cpp @@ -43,7 +43,7 @@ void g() cv->wait(lk); } -int main() +int main(int, char**) { cv = new std::condition_variable; std::thread th2(g); @@ -54,4 +54,6 @@ int main() std::thread th1(f); th1.join(); th2.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/notify_all.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/notify_all.pass.cpp index c281a9d2097..46c53a863f5 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/notify_all.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/notify_all.pass.cpp @@ -46,7 +46,7 @@ void f2() test2 = 2; } -int main() +int main(int, char**) { std::thread t1(f1); std::thread t2(f2); @@ -65,4 +65,6 @@ int main() t2.join(); assert(test1 == 2); assert(test2 == 2); + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/notify_one.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/notify_one.pass.cpp index f72d36e8abf..eb1de67db9f 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/notify_one.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/notify_one.pass.cpp @@ -47,7 +47,7 @@ void f2() test2 = 2; } -int main() +int main(int, char**) { std::thread t1(f1); std::thread t2(f2); @@ -95,4 +95,6 @@ int main() } else assert(false); + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait.pass.cpp index a3420740641..03bcfeea94d 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait.pass.cpp @@ -36,7 +36,7 @@ void f() assert(test2 != 0); } -int main() +int main(int, char**) { std::unique_lock<std::mutex>lk(mut); std::thread t(f); @@ -48,4 +48,6 @@ int main() lk.unlock(); cv.notify_one(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp index f34b230c243..505997fff46 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp @@ -59,7 +59,7 @@ void f() ++runs; } -int main() +int main(int, char**) { { std::unique_lock<std::mutex>lk(mut); @@ -85,4 +85,6 @@ int main() lk.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for_pred.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for_pred.pass.cpp index a61b000bdc9..e92ce4583c5 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for_pred.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for_pred.pass.cpp @@ -66,7 +66,7 @@ void f() ++runs; } -int main() +int main(int, char**) { { std::unique_lock<std::mutex>lk(mut); @@ -92,4 +92,6 @@ int main() lk.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_pred.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_pred.pass.cpp index f99436a5e29..0de8524ed1e 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_pred.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_pred.pass.cpp @@ -46,7 +46,7 @@ void f() assert(test2 != 0); } -int main() +int main(int, char**) { std::unique_lock<std::mutex>lk(mut); std::thread t(f); @@ -58,4 +58,6 @@ int main() lk.unlock(); cv.notify_one(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_until.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_until.pass.cpp index f954ae25ee2..7f1bdf827cb 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_until.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_until.pass.cpp @@ -72,7 +72,7 @@ void f() ++runs; } -int main() +int main(int, char**) { { std::unique_lock<std::mutex>lk(mut); @@ -98,4 +98,6 @@ int main() lk.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_until_pred.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_until_pred.pass.cpp index 8307a52c0e3..f21b1b54bc6 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_until_pred.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_until_pred.pass.cpp @@ -85,7 +85,7 @@ void f() ++runs; } -int main() +int main(int, char**) { { std::unique_lock<std::mutex>lk(mut); @@ -111,4 +111,6 @@ int main() lk.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/assign.fail.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/assign.fail.cpp index 214164ea72a..0c2adc9a538 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/assign.fail.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/assign.fail.cpp @@ -15,9 +15,11 @@ #include <condition_variable> #include <cassert> -int main() +int main(int, char**) { std::condition_variable_any cv0; std::condition_variable_any cv1; cv1 = cv0; + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/copy.fail.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/copy.fail.cpp index 6eafc62024f..5aff93ba0fa 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/copy.fail.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/copy.fail.cpp @@ -15,8 +15,10 @@ #include <condition_variable> #include <cassert> -int main() +int main(int, char**) { std::condition_variable_any cv0; std::condition_variable_any cv1(cv0); + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/default.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/default.pass.cpp index 05ebff06807..0c35da0321b 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/default.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/default.pass.cpp @@ -17,7 +17,9 @@ #include <condition_variable> #include <cassert> -int main() +int main(int, char**) { std::condition_variable_any cv; + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/destructor.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/destructor.pass.cpp index 57b3024fe0a..35580d4293b 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/destructor.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/destructor.pass.cpp @@ -44,7 +44,7 @@ void g() m.unlock(); } -int main() +int main(int, char**) { cv = new std::condition_variable_any; std::thread th2(g); @@ -55,4 +55,6 @@ int main() std::thread th1(f); th1.join(); th2.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/notify_all.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/notify_all.pass.cpp index cb79d8a6b6c..d12c9360288 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/notify_all.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/notify_all.pass.cpp @@ -50,7 +50,7 @@ void f2() test2 = 2; } -int main() +int main(int, char**) { std::thread t1(f1); std::thread t2(f2); @@ -69,4 +69,6 @@ int main() t2.join(); assert(test1 == 2); assert(test2 == 2); + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/notify_one.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/notify_one.pass.cpp index e5c0a0943c9..27a0f87e59f 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/notify_one.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/notify_one.pass.cpp @@ -52,7 +52,7 @@ void f2() test2 = 2; } -int main() +int main(int, char**) { std::thread t1(f1); std::thread t2(f2); @@ -96,4 +96,6 @@ int main() } else assert(false); + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait.pass.cpp index 741094bddfa..a3b2e87c9e9 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait.pass.cpp @@ -41,7 +41,7 @@ void f() assert(test2 != 0); } -int main() +int main(int, char**) { L1 lk(m0); std::thread t(f); @@ -53,4 +53,6 @@ int main() lk.unlock(); cv.notify_one(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for.pass.cpp index ec4eb339896..d472a698fec 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for.pass.cpp @@ -62,7 +62,7 @@ void f() ++runs; } -int main() +int main(int, char**) { { L1 lk(m0); @@ -88,4 +88,6 @@ int main() lk.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for_pred.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for_pred.pass.cpp index 81d69861fe9..cbf0193ade3 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for_pred.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for_pred.pass.cpp @@ -70,7 +70,7 @@ void f() ++runs; } -int main() +int main(int, char**) { { expect_result = true; @@ -98,4 +98,6 @@ int main() lk.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_pred.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_pred.pass.cpp index d76cbd443a9..eafc434d0c2 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_pred.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_pred.pass.cpp @@ -50,7 +50,7 @@ void f() assert(test2 != 0); } -int main() +int main(int, char**) { L1 lk(m0); std::thread t(f); @@ -62,4 +62,6 @@ int main() lk.unlock(); cv.notify_one(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_terminates.sh.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_terminates.sh.cpp index 796b66e99b6..8afa0515920 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_terminates.sh.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_terminates.sh.cpp @@ -109,7 +109,7 @@ void signal_me() { typedef std::chrono::system_clock Clock; typedef std::chrono::milliseconds MS; -int main(int argc, char** argv) { +int main(int argc, char **argv) { assert(argc == 2); int id = std::stoi(argv[1]); assert(id >= 1 && id <= 6); @@ -130,4 +130,6 @@ int main(int argc, char** argv) { } } catch (...) {} assert(false); + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until.pass.cpp index 276597350f6..e14944906b7 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until.pass.cpp @@ -75,7 +75,7 @@ void f() ++runs; } -int main() +int main(int, char**) { { L1 lk(m0); @@ -101,4 +101,6 @@ int main() lk.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until_pred.pass.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until_pred.pass.cpp index 0216688d7e2..5eb253a75fc 100644 --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until_pred.pass.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until_pred.pass.cpp @@ -89,7 +89,7 @@ void f() ++runs; } -int main() +int main(int, char**) { { L1 lk(m0); @@ -115,4 +115,6 @@ int main() lk.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.general/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.general/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.general/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.general/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock.algorithm/lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock.algorithm/lock.pass.cpp index 1c7de834940..207b0753e72 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock.algorithm/lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock.algorithm/lock.pass.cpp @@ -92,7 +92,7 @@ public: bool locked() const {return locked_;} }; -int main() +int main(int, char**) { { L0 l0; @@ -518,4 +518,6 @@ int main() } #endif // TEST_HAS_NO_EXCEPTIONS #endif // TEST_STD_VER >= 11 + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock.algorithm/try_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock.algorithm/try_lock.pass.cpp index 7856ab96f8b..50ff29ce959 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock.algorithm/try_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock.algorithm/try_lock.pass.cpp @@ -72,7 +72,7 @@ public: bool locked() const {return locked_;} }; -int main() +int main(int, char**) { { L0 l0; @@ -522,4 +522,6 @@ int main() assert(!l3.locked()); } #endif // TEST_STD_VER >= 11 + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/adopt_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/adopt_lock.pass.cpp index 273a4881355..fc76eb34eb4 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/adopt_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/adopt_lock.pass.cpp @@ -42,11 +42,13 @@ void f() assert(d < ms(50)); // within 50ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(ms(250)); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/assign.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/assign.fail.cpp index b22e0db9efd..2d0f438ed03 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/assign.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/assign.fail.cpp @@ -14,11 +14,13 @@ #include <mutex> -int main() +int main(int, char**) { std::mutex m0; std::mutex m1; std::lock_guard<std::mutex> lg0(m0); std::lock_guard<std::mutex> lg(m1); lg = lg0; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/copy.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/copy.fail.cpp index 1852db1e5a0..e99517e47e8 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/copy.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/copy.fail.cpp @@ -14,9 +14,11 @@ #include <mutex> -int main() +int main(int, char**) { std::mutex m; std::lock_guard<std::mutex> lg0(m); std::lock_guard<std::mutex> lg(lg0); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/mutex.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/mutex.fail.cpp index 52a0397de55..383c1539a60 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/mutex.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/mutex.fail.cpp @@ -16,8 +16,10 @@ #include <mutex> -int main() +int main(int, char**) { std::mutex m; std::lock_guard<std::mutex> lg = m; // expected-error{{no viable conversion}} + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/mutex.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/mutex.pass.cpp index 84353486bac..fa6aa4615aa 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/mutex.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/mutex.pass.cpp @@ -46,7 +46,7 @@ void f() assert(d < ms(200)); // within 200ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); @@ -58,4 +58,6 @@ int main() std::lock_guard lg(m); static_assert((std::is_same<decltype(lg), std::lock_guard<decltype(m)>>::value), "" ); #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/types.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/types.pass.cpp index 745633b55c7..b9cdb4dec5d 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/types.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/types.pass.cpp @@ -21,8 +21,10 @@ #include <mutex> #include <type_traits> -int main() +int main(int, char**) { static_assert((std::is_same<std::lock_guard<std::mutex>::mutex_type, std::mutex>::value), ""); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/adopt_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/adopt_lock.pass.cpp index edaf09c5a1d..63e0626d532 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/adopt_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/adopt_lock.pass.cpp @@ -31,7 +31,7 @@ struct TestMutex { TestMutex& operator=(TestMutex const&) = delete; }; -int main() +int main(int, char**) { { using LG = std::scoped_lock<>; @@ -68,4 +68,6 @@ int main() assert(!m1.locked && !m2.locked && !m3.locked); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/assign.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/assign.fail.cpp index d88b4dedc93..66a68bb2765 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/assign.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/assign.fail.cpp @@ -18,7 +18,7 @@ #include <mutex> #include "test_macros.h" -int main() +int main(int, char**) { using M = std::mutex; M m0, m1, m2; @@ -46,4 +46,6 @@ int main() LG lg2(om0, om1, om2); lg1 = lg2; // expected-error{{overload resolution selected deleted operator '='}} } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/copy.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/copy.fail.cpp index 16938731b7b..3829d15a625 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/copy.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/copy.fail.cpp @@ -18,7 +18,7 @@ #include <mutex> #include "test_macros.h" -int main() +int main(int, char**) { using M = std::mutex; M m0, m1, m2; @@ -42,4 +42,6 @@ int main() const LG Orig(m0, m1, m2); LG Copy(Orig); // expected-error{{call to deleted constructor of 'LG'}} } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/mutex.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/mutex.fail.cpp index 4f25ec237aa..0c9258887d3 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/mutex.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/mutex.fail.cpp @@ -21,7 +21,7 @@ template <class LG> void test_conversion(LG) {} -int main() +int main(int, char**) { using M = std::mutex; M m0, m1, m2; @@ -49,4 +49,6 @@ int main() LG lg = {m0, m1, m2}; // expected-error{{chosen constructor is explicit in copy-initialization}} test_conversion<LG>({n0, n1, n2}); // expected-error{{no matching function for call}} } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/mutex.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/mutex.pass.cpp index 219c389aa02..3a633c39b03 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/mutex.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/mutex.pass.cpp @@ -61,7 +61,7 @@ struct TestMutexThrows { }; #endif // !defined(TEST_HAS_NO_EXCEPTIONS) -int main() +int main(int, char**) { { using LG = std::scoped_lock<>; @@ -151,4 +151,6 @@ int main() } } #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/types.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/types.pass.cpp index 5228ccead87..62621fccad7 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/types.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/types.pass.cpp @@ -36,7 +36,7 @@ constexpr bool has_mutex_type() { return !std::is_same<decltype(test_typedef<LG>(0)), NAT>::value; } -int main() +int main(int, char**) { { using T = std::scoped_lock<>; @@ -74,4 +74,6 @@ int main() using T = std::scoped_lock<M1, M1, M1>; static_assert(!has_mutex_type<T>(), ""); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/copy_assign.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/copy_assign.fail.cpp index ff6c376da2c..1b31fbc50d2 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/copy_assign.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/copy_assign.fail.cpp @@ -18,9 +18,11 @@ std::shared_timed_mutex m0; std::shared_timed_mutex m1; -int main() +int main(int, char**) { std::shared_lock<std::shared_timed_mutex> lk0(m0); std::shared_lock<std::shared_timed_mutex> lk1(m1); lk1 = lk0; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/copy_ctor.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/copy_ctor.fail.cpp index 6f1f2e9ab04..48da3c715fa 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/copy_ctor.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/copy_ctor.fail.cpp @@ -17,8 +17,10 @@ std::shared_timed_mutex m; -int main() +int main(int, char**) { std::shared_lock<std::shared_timed_mutex> lk0(m); std::shared_lock<std::shared_timed_mutex> lk = lk0; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/default.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/default.pass.cpp index 2d571cb51db..0543ae72e82 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/default.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/default.pass.cpp @@ -18,9 +18,11 @@ #include <shared_mutex> #include <cassert> -int main() +int main(int, char**) { std::shared_lock<std::shared_timed_mutex> ul; assert(!ul.owns_lock()); assert(ul.mutex() == nullptr); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/move_assign.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/move_assign.pass.cpp index 960948421d2..999d65f028b 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/move_assign.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/move_assign.pass.cpp @@ -20,7 +20,7 @@ #include "nasty_containers.hpp" -int main() +int main(int, char**) { { typedef std::shared_timed_mutex M; @@ -46,4 +46,6 @@ int main() assert(lk0.mutex() == nullptr); assert(lk0.owns_lock() == false); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/move_ctor.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/move_ctor.pass.cpp index 6be2e774b00..1f61e21fbcf 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/move_ctor.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/move_ctor.pass.cpp @@ -19,7 +19,7 @@ #include <cassert> #include "nasty_containers.hpp" -int main() +int main(int, char**) { { typedef std::shared_timed_mutex M; @@ -41,4 +41,6 @@ int main() assert(lk0.mutex() == nullptr); assert(lk0.owns_lock() == false); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex.pass.cpp index 1204eb1f018..14c084f008d 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex.pass.cpp @@ -71,7 +71,7 @@ void g() assert(d < Tolerance); // within tolerance } -int main() +int main(int, char**) { std::vector<std::thread> v; { @@ -99,4 +99,6 @@ int main() std::shared_lock sl(m); static_assert((std::is_same<decltype(sl), std::shared_lock<decltype(m)>>::value), "" ); #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_adopt_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_adopt_lock.pass.cpp index 2b5fae21bdc..86d54b5083b 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_adopt_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_adopt_lock.pass.cpp @@ -19,7 +19,7 @@ #include <cassert> #include "nasty_containers.hpp" -int main() +int main(int, char**) { { typedef std::shared_timed_mutex M; @@ -37,4 +37,6 @@ int main() assert(lk.mutex() == std::addressof(m)); assert(lk.owns_lock() == true); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_defer_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_defer_lock.pass.cpp index c7d0a192b79..5a085d2e6ae 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_defer_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_defer_lock.pass.cpp @@ -19,7 +19,7 @@ #include <cassert> #include "nasty_containers.hpp" -int main() +int main(int, char**) { { typedef std::shared_timed_mutex M; @@ -35,4 +35,6 @@ int main() assert(lk.mutex() == std::addressof(m)); assert(lk.owns_lock() == false); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_duration.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_duration.pass.cpp index f633c2e8c65..3228f938f90 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_duration.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_duration.pass.cpp @@ -66,7 +66,7 @@ void f2() assert(d < Tolerance); // within 50ms } -int main() +int main(int, char**) { { m.lock(); @@ -88,4 +88,6 @@ int main() for (auto& t : v) t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_time_point.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_time_point.pass.cpp index c899cea3e04..f62e739443a 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_time_point.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_time_point.pass.cpp @@ -65,7 +65,7 @@ void f2() assert(d < Tolerance); // within 50ms } -int main() +int main(int, char**) { { m.lock(); @@ -87,4 +87,6 @@ int main() for (auto& t : v) t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_try_to_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_try_to_lock.pass.cpp index 4375a2b9978..7dd7c16fe5b 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_try_to_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_try_to_lock.pass.cpp @@ -57,7 +57,7 @@ void f() assert(d < ms(200)); // within 200ms } -int main() +int main(int, char**) { m.lock(); std::vector<std::thread> v; @@ -67,4 +67,6 @@ int main() m.unlock(); for (auto& t : v) t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp index 7726337c8c7..5f084b21259 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp @@ -80,7 +80,7 @@ void f() #endif } -int main() +int main(int, char**) { m.lock(); std::vector<std::thread> v; @@ -90,4 +90,6 @@ int main() m.unlock(); for (auto& t : v) t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock.pass.cpp index 884dd47b092..488260618bc 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock.pass.cpp @@ -34,7 +34,7 @@ struct mutex mutex m; -int main() +int main(int, char**) { std::shared_lock<mutex> lk(m, std::defer_lock); assert(lk.try_lock() == true); @@ -67,4 +67,6 @@ int main() assert(e.code().value() == EPERM); } #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock_for.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock_for.pass.cpp index e6df4f121f3..b2c1776839b 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock_for.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock_for.pass.cpp @@ -39,7 +39,7 @@ struct mutex mutex m; -int main() +int main(int, char**) { std::shared_lock<mutex> lk(m, std::defer_lock); assert(lk.try_lock_for(ms(5)) == true); @@ -72,4 +72,6 @@ int main() assert(e.code().value() == EPERM); } #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock_until.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock_until.pass.cpp index 74e0ecc23e7..59bcd4a0bd8 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock_until.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock_until.pass.cpp @@ -38,7 +38,7 @@ struct mutex mutex m; -int main() +int main(int, char**) { typedef std::chrono::steady_clock Clock; std::shared_lock<mutex> lk(m, std::defer_lock); @@ -72,4 +72,6 @@ int main() assert(e.code().value() == EPERM); } #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/unlock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/unlock.pass.cpp index 6c100470e34..b0e337bda5f 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/unlock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/unlock.pass.cpp @@ -30,7 +30,7 @@ struct mutex mutex m; -int main() +int main(int, char**) { std::shared_lock<mutex> lk(m); lk.unlock(); @@ -59,4 +59,6 @@ int main() assert(e.code().value() == EPERM); } #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.mod/member_swap.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.mod/member_swap.pass.cpp index 22eb3ee48e6..ce385ddbd66 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.mod/member_swap.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.mod/member_swap.pass.cpp @@ -26,7 +26,7 @@ struct mutex mutex m; -int main() +int main(int, char**) { std::shared_lock<mutex> lk1(m); std::shared_lock<mutex> lk2; @@ -36,4 +36,6 @@ int main() assert(lk2.mutex() == &m); assert(lk2.owns_lock() == true); static_assert(noexcept(lk1.swap(lk2)), "member swap must be noexcept"); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.mod/nonmember_swap.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.mod/nonmember_swap.pass.cpp index 65e05d39f5c..cec13f0f2f7 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.mod/nonmember_swap.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.mod/nonmember_swap.pass.cpp @@ -27,7 +27,7 @@ struct mutex mutex m; -int main() +int main(int, char**) { std::shared_lock<mutex> lk1(m); std::shared_lock<mutex> lk2; @@ -37,4 +37,6 @@ int main() assert(lk2.mutex() == &m); assert(lk2.owns_lock() == true); static_assert(noexcept(swap(lk1, lk2)), "non-member swap must be noexcept"); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.mod/release.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.mod/release.pass.cpp index d387a835180..f2e5820cf0c 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.mod/release.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.mod/release.pass.cpp @@ -31,7 +31,7 @@ int mutex::unlock_count = 0; mutex m; -int main() +int main(int, char**) { std::shared_lock<mutex> lk(m); assert(lk.mutex() == &m); @@ -44,4 +44,6 @@ int main() assert(mutex::lock_count == 1); assert(mutex::unlock_count == 0); static_assert(noexcept(lk.release()), "release must be noexcept"); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.obs/mutex.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.obs/mutex.pass.cpp index 28685954ba7..867bae0e371 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.obs/mutex.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.obs/mutex.pass.cpp @@ -20,7 +20,7 @@ std::shared_timed_mutex m; -int main() +int main(int, char**) { std::shared_lock<std::shared_timed_mutex> lk0; assert(lk0.mutex() == nullptr); @@ -29,4 +29,6 @@ int main() lk1.unlock(); assert(lk1.mutex() == &m); static_assert(noexcept(lk0.mutex()), "mutex() must be noexcept"); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.obs/op_bool.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.obs/op_bool.pass.cpp index 1064d727c69..82d737ee5e5 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.obs/op_bool.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.obs/op_bool.pass.cpp @@ -20,7 +20,7 @@ std::shared_timed_mutex m; -int main() +int main(int, char**) { std::shared_lock<std::shared_timed_mutex> lk0; assert(static_cast<bool>(lk0) == false); @@ -29,4 +29,6 @@ int main() lk1.unlock(); assert(static_cast<bool>(lk1) == false); static_assert(noexcept(static_cast<bool>(lk0)), "explicit operator bool() must be noexcept"); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.obs/owns_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.obs/owns_lock.pass.cpp index 36a2c0f835d..f949684e834 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.obs/owns_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.obs/owns_lock.pass.cpp @@ -20,7 +20,7 @@ std::shared_timed_mutex m; -int main() +int main(int, char**) { std::shared_lock<std::shared_timed_mutex> lk0; assert(lk0.owns_lock() == false); @@ -29,4 +29,6 @@ int main() lk1.unlock(); assert(lk1.owns_lock() == false); static_assert(noexcept(lk0.owns_lock()), "owns_lock must be noexcept"); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/types.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/types.pass.cpp index c5be52afea2..44d19e8dbb4 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/types.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/types.pass.cpp @@ -23,8 +23,10 @@ #include <shared_mutex> #include <type_traits> -int main() +int main(int, char**) { static_assert((std::is_same<std::shared_lock<std::mutex>::mutex_type, std::mutex>::value), ""); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_assign.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_assign.fail.cpp index 05799104657..799cb61f9b2 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_assign.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_assign.fail.cpp @@ -15,7 +15,7 @@ #include <mutex> #include <cassert> -int main() +int main(int, char**) { { typedef std::mutex M; @@ -29,4 +29,6 @@ int main() assert(lk0.mutex() == nullptr); assert(lk0.owns_lock() == false); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_ctor.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_ctor.fail.cpp index 12045f9989d..e258198e60b 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_ctor.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_ctor.fail.cpp @@ -15,7 +15,7 @@ #include <mutex> #include <cassert> -int main() +int main(int, char**) { { typedef std::mutex M; @@ -27,4 +27,6 @@ int main() assert(lk0.mutex() == nullptr); assert(lk0.owns_lock() == false); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/default.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/default.pass.cpp index 46f4f1e8013..74b26514102 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/default.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/default.pass.cpp @@ -17,9 +17,11 @@ #include <mutex> #include <cassert> -int main() +int main(int, char**) { std::unique_lock<std::mutex> ul; assert(!ul.owns_lock()); assert(ul.mutex() == nullptr); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_assign.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_assign.pass.cpp index 16b1bd8c554..1e663766b10 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_assign.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_assign.pass.cpp @@ -18,7 +18,7 @@ #include <cassert> #include "nasty_containers.hpp" -int main() +int main(int, char**) { { typedef std::mutex M; @@ -44,4 +44,6 @@ int main() assert(lk0.mutex() == nullptr); assert(lk0.owns_lock() == false); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_ctor.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_ctor.pass.cpp index 2c4993702b1..8ea0a1f2d46 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_ctor.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_ctor.pass.cpp @@ -18,7 +18,7 @@ #include <cassert> #include "nasty_containers.hpp" -int main() +int main(int, char**) { { typedef std::mutex M; @@ -40,4 +40,6 @@ int main() assert(lk0.mutex() == nullptr); assert(lk0.owns_lock() == false); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex.pass.cpp index 30897b3d862..61c0dacf17a 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex.pass.cpp @@ -46,7 +46,7 @@ void f() assert(d < ms(50)); // within 50ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); @@ -58,4 +58,6 @@ int main() std::unique_lock ul(m); static_assert((std::is_same<decltype(ul), std::unique_lock<decltype(m)>>::value), "" ); #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_adopt_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_adopt_lock.pass.cpp index 1c258d6a64a..d957c6d24b0 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_adopt_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_adopt_lock.pass.cpp @@ -18,7 +18,7 @@ #include <cassert> #include "nasty_containers.hpp" -int main() +int main(int, char**) { { typedef std::mutex M; @@ -36,4 +36,6 @@ int main() assert(lk.mutex() == std::addressof(m)); assert(lk.owns_lock() == true); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_defer_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_defer_lock.pass.cpp index 5f4ab4e7413..af6853160f6 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_defer_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_defer_lock.pass.cpp @@ -18,7 +18,7 @@ #include <cassert> #include "nasty_containers.hpp" -int main() +int main(int, char**) { { typedef std::mutex M; @@ -34,4 +34,6 @@ int main() assert(lk.mutex() == std::addressof(m)); assert(lk.owns_lock() == false); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_duration.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_duration.pass.cpp index 8fee76b8fe7..8699dd554af 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_duration.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_duration.pass.cpp @@ -50,7 +50,7 @@ void f2() assert(d < ms(50)); // within 50ms } -int main() +int main(int, char**) { { m.lock(); @@ -66,4 +66,6 @@ int main() m.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_time_point.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_time_point.pass.cpp index 4cd2efeba2b..ab46dacad3c 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_time_point.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_time_point.pass.cpp @@ -50,7 +50,7 @@ void f2() assert(d < ms(50)); // within 50ms } -int main() +int main(int, char**) { { m.lock(); @@ -66,4 +66,6 @@ int main() m.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_try_to_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_try_to_lock.pass.cpp index 3c385808bf3..448be8e7e14 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_try_to_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_try_to_lock.pass.cpp @@ -53,11 +53,13 @@ void f() assert(d < ms(200)); // within 200ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(ms(250)); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/lock.pass.cpp index 536a0d7d22c..b8a0c2d343e 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/lock.pass.cpp @@ -66,11 +66,13 @@ void f() #endif } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(ms(250)); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock.pass.cpp index cfc0befcab1..a6247df7ede 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock.pass.cpp @@ -33,7 +33,7 @@ struct mutex mutex m; -int main() +int main(int, char**) { std::unique_lock<mutex> lk(m, std::defer_lock); assert(lk.try_lock() == true); @@ -66,4 +66,6 @@ int main() assert(e.code().value() == EPERM); } #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_for.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_for.pass.cpp index f1a2ef6c414..a6166ceda86 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_for.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_for.pass.cpp @@ -38,7 +38,7 @@ struct mutex mutex m; -int main() +int main(int, char**) { std::unique_lock<mutex> lk(m, std::defer_lock); assert(lk.try_lock_for(ms(5)) == true); @@ -71,4 +71,6 @@ int main() assert(e.code().value() == EPERM); } #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_until.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_until.pass.cpp index 60616da935f..6c7da1c0cdf 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_until.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_until.pass.cpp @@ -37,7 +37,7 @@ struct mutex mutex m; -int main() +int main(int, char**) { typedef std::chrono::steady_clock Clock; std::unique_lock<mutex> lk(m, std::defer_lock); @@ -71,4 +71,6 @@ int main() assert(e.code().value() == EPERM); } #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/unlock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/unlock.pass.cpp index bb0c00ded28..1f0a0e529dc 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/unlock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/unlock.pass.cpp @@ -29,7 +29,7 @@ struct mutex mutex m; -int main() +int main(int, char**) { std::unique_lock<mutex> lk(m); lk.unlock(); @@ -58,4 +58,6 @@ int main() assert(e.code().value() == EPERM); } #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/member_swap.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/member_swap.pass.cpp index 3c89d6cf8e0..707755f59a8 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/member_swap.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/member_swap.pass.cpp @@ -25,7 +25,7 @@ struct mutex mutex m; -int main() +int main(int, char**) { std::unique_lock<mutex> lk1(m); std::unique_lock<mutex> lk2; @@ -34,4 +34,6 @@ int main() assert(lk1.owns_lock() == false); assert(lk2.mutex() == &m); assert(lk2.owns_lock() == true); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/nonmember_swap.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/nonmember_swap.pass.cpp index ea99ba9e5ff..1c05657d6ba 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/nonmember_swap.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/nonmember_swap.pass.cpp @@ -26,7 +26,7 @@ struct mutex mutex m; -int main() +int main(int, char**) { std::unique_lock<mutex> lk1(m); std::unique_lock<mutex> lk2; @@ -35,4 +35,6 @@ int main() assert(lk1.owns_lock() == false); assert(lk2.mutex() == &m); assert(lk2.owns_lock() == true); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/release.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/release.pass.cpp index 9dc9ec3a1ab..9751149b9bd 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/release.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/release.pass.cpp @@ -30,7 +30,7 @@ int mutex::unlock_count = 0; mutex m; -int main() +int main(int, char**) { std::unique_lock<mutex> lk(m); assert(lk.mutex() == &m); @@ -42,4 +42,6 @@ int main() assert(lk.owns_lock() == false); assert(mutex::lock_count == 1); assert(mutex::unlock_count == 0); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/mutex.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/mutex.pass.cpp index 6e6fb6b76ff..899f965dfe1 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/mutex.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/mutex.pass.cpp @@ -19,7 +19,7 @@ std::mutex m; -int main() +int main(int, char**) { std::unique_lock<std::mutex> lk0; assert(lk0.mutex() == nullptr); @@ -27,4 +27,6 @@ int main() assert(lk1.mutex() == &m); lk1.unlock(); assert(lk1.mutex() == &m); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/op_bool.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/op_bool.pass.cpp index 184bc71f5b7..1affe8deb19 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/op_bool.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/op_bool.pass.cpp @@ -19,7 +19,7 @@ std::mutex m; -int main() +int main(int, char**) { std::unique_lock<std::mutex> lk0; assert(static_cast<bool>(lk0) == false); @@ -27,4 +27,6 @@ int main() assert(static_cast<bool>(lk1) == true); lk1.unlock(); assert(static_cast<bool>(lk1) == false); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/owns_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/owns_lock.pass.cpp index 68f944e2663..2c5496b294b 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/owns_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/owns_lock.pass.cpp @@ -19,7 +19,7 @@ std::mutex m; -int main() +int main(int, char**) { std::unique_lock<std::mutex> lk0; assert(lk0.owns_lock() == false); @@ -27,4 +27,6 @@ int main() assert(lk1.owns_lock() == true); lk1.unlock(); assert(lk1.owns_lock() == false); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/types.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/types.pass.cpp index 44b1265e7ea..7dc093ac639 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/types.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/types.pass.cpp @@ -21,8 +21,10 @@ #include <mutex> #include <type_traits> -int main() +int main(int, char**) { static_assert((std::is_same<std::unique_lock<std::mutex>::mutex_type, std::mutex>::value), ""); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/types.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/types.pass.cpp index 8d6a1fbcef9..150d9b4aafc 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock/types.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock/types.pass.cpp @@ -21,7 +21,7 @@ #include <mutex> #include <type_traits> -int main() +int main(int, char**) { typedef std::defer_lock_t T1; typedef std::try_to_lock_t T2; @@ -30,4 +30,6 @@ int main() T1 t1 = std::defer_lock; ((void)t1); T2 t2 = std::try_to_lock; ((void)t2); T3 t3 = std::adopt_lock; ((void)t3); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.general/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.general/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.general/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.general/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/assign.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/assign.fail.cpp index d2d34a289ea..ba09ed1a706 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/assign.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/assign.fail.cpp @@ -14,9 +14,11 @@ #include <mutex> -int main() +int main(int, char**) { std::mutex m0; std::mutex m1; m1 = m0; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/copy.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/copy.fail.cpp index 5e1f17dc186..9edfb7267de 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/copy.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/copy.fail.cpp @@ -14,8 +14,10 @@ #include <mutex> -int main() +int main(int, char**) { std::mutex m0; std::mutex m1(m0); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/default.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/default.pass.cpp index aa8a34b0735..b5a608eeb0c 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/default.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/default.pass.cpp @@ -17,8 +17,10 @@ #include <mutex> #include <type_traits> -int main() +int main(int, char**) { static_assert(std::is_nothrow_default_constructible<std::mutex>::value, ""); std::mutex m; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/lock.pass.cpp index 912b647d3d2..dcb4b8ff859 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/lock.pass.cpp @@ -41,11 +41,13 @@ void f() assert(d < ms(50)); // within 50ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(ms(250)); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/try_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/try_lock.pass.cpp index 9d3d53dab31..71221558331 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/try_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/try_lock.pass.cpp @@ -41,11 +41,13 @@ void f() assert(d < ms(200)); // within 200ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(ms(250)); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/assign.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/assign.fail.cpp index 613eae74de5..0cf3c5bca1e 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/assign.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/assign.fail.cpp @@ -14,9 +14,11 @@ #include <mutex> -int main() +int main(int, char**) { std::recursive_mutex m0; std::recursive_mutex m1; m1 = m0; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/copy.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/copy.fail.cpp index 812951b46ec..454d7797373 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/copy.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/copy.fail.cpp @@ -14,8 +14,10 @@ #include <mutex> -int main() +int main(int, char**) { std::recursive_mutex m0; std::recursive_mutex m1(m0); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/default.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/default.pass.cpp index 9c63a803703..e32c92f0c97 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/default.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/default.pass.cpp @@ -16,7 +16,9 @@ #include <mutex> -int main() +int main(int, char**) { std::recursive_mutex m; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/lock.pass.cpp index 0342b4c2cf2..f8744a9b750 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/lock.pass.cpp @@ -41,11 +41,13 @@ void f() assert(d < ms(200)); // within 200ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(ms(250)); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/try_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/try_lock.pass.cpp index b5b256566f7..092343fe752 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/try_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/try_lock.pass.cpp @@ -43,11 +43,13 @@ void f() assert(d < ms(200)); // within 200ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(ms(250)); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/assign.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/assign.fail.cpp index 6b589f97d97..337fcdf08b4 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/assign.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/assign.fail.cpp @@ -17,9 +17,11 @@ #include <shared_mutex> -int main() +int main(int, char**) { std::shared_mutex m0; std::shared_mutex m1; m1 = m0; // expected-error {{overload resolution selected deleted operator '='}} + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/copy.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/copy.fail.cpp index 0c4fb55f14a..93d02885a59 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/copy.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/copy.fail.cpp @@ -17,8 +17,10 @@ #include <shared_mutex> -int main() +int main(int, char**) { std::shared_mutex m0; std::shared_mutex m1(m0); // expected-error {{call to deleted constructor of 'std::shared_mutex'}} + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/default.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/default.pass.cpp index ac8b9b076cb..ecd29b7485a 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/default.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/default.pass.cpp @@ -17,7 +17,9 @@ #include <shared_mutex> -int main() +int main(int, char**) { std::shared_mutex m; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock.pass.cpp index 3eb434a8034..74c66d0f672 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock.pass.cpp @@ -53,11 +53,13 @@ void f() assert(d < Tolerance); // within tolerance } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(WaitTime); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock_shared.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock_shared.pass.cpp index 38be785c867..7707af8d8b8 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock_shared.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock_shared.pass.cpp @@ -65,7 +65,7 @@ void g() } -int main() +int main(int, char**) { m.lock(); std::vector<std::thread> v; @@ -84,4 +84,6 @@ int main() for (auto& t : v) t.join(); q.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock.pass.cpp index fff58b1ff72..09c7ad5f005 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock.pass.cpp @@ -42,11 +42,13 @@ void f() assert(d < ms(200)); // within 200ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(ms(250)); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock_shared.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock_shared.pass.cpp index 26bf18868f6..b9538b56497 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock_shared.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock_shared.pass.cpp @@ -46,7 +46,7 @@ void f() } -int main() +int main(int, char**) { m.lock(); std::vector<std::thread> v; @@ -56,4 +56,6 @@ int main() m.unlock(); for (auto& t : v) t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/assign.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/assign.fail.cpp index c710e0510f7..483111db97e 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/assign.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/assign.fail.cpp @@ -15,9 +15,11 @@ #include <shared_mutex> -int main() +int main(int, char**) { std::shared_timed_mutex m0; std::shared_timed_mutex m1; m1 = m0; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/copy.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/copy.fail.cpp index dba5e311417..7483b1f5193 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/copy.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/copy.fail.cpp @@ -15,8 +15,10 @@ #include <shared_mutex> -int main() +int main(int, char**) { std::shared_timed_mutex m0; std::shared_timed_mutex m1(m0); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/default.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/default.pass.cpp index 8fe432fc191..83b30b98dd9 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/default.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/default.pass.cpp @@ -17,7 +17,9 @@ #include <shared_mutex> -int main() +int main(int, char**) { std::shared_timed_mutex m; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock.pass.cpp index c3be2b61663..56464b24005 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock.pass.cpp @@ -55,11 +55,13 @@ void f() assert(d < ms(50)); // within 50ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(ms(250)); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock_shared.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock_shared.pass.cpp index 0702ba01c07..08d35861e47 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock_shared.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock_shared.pass.cpp @@ -67,7 +67,7 @@ void g() } -int main() +int main(int, char**) { m.lock(); std::vector<std::thread> v; @@ -86,4 +86,6 @@ int main() for (auto& t : v) t.join(); q.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock.pass.cpp index 4927c3654b7..6b2d9a543e5 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock.pass.cpp @@ -42,11 +42,13 @@ void f() assert(d < ms(200)); // within 200ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(ms(250)); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_for.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_for.pass.cpp index d2a24fb81ca..45fea3e96fc 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_for.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_for.pass.cpp @@ -64,7 +64,7 @@ void f2() assert(d < Tolerance); // within tolerance } -int main() +int main(int, char**) { { m.lock(); @@ -80,4 +80,6 @@ int main() m.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared.pass.cpp index 7e0886de447..830445af9a0 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared.pass.cpp @@ -54,7 +54,7 @@ void f() assert(d < Tolerance); // within tolerance } -int main() +int main(int, char**) { m.lock(); std::vector<std::thread> v; @@ -64,4 +64,6 @@ int main() m.unlock(); for (auto& t : v) t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_for.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_for.pass.cpp index 250ff9be932..d89e4aa8cfc 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_for.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_for.pass.cpp @@ -64,7 +64,7 @@ void f2() assert(d < Tolerance); // within 50ms } -int main() +int main(int, char**) { { m.lock(); @@ -86,4 +86,6 @@ int main() for (auto& t : v) t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_until.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_until.pass.cpp index de6c5846387..5898fe41e05 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_until.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_until.pass.cpp @@ -64,7 +64,7 @@ void f2() assert(d < Tolerance); // within tolerance } -int main() +int main(int, char**) { { m.lock(); @@ -86,4 +86,6 @@ int main() for (auto& t : v) t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until.pass.cpp index 40cdfe84400..9539215c46f 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until.pass.cpp @@ -64,7 +64,7 @@ void f2() assert(d < Tolerance); // within tolerance } -int main() +int main(int, char**) { { m.lock(); @@ -80,4 +80,6 @@ int main() m.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until_deadlock_bug.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until_deadlock_bug.pass.cpp index fb766e1617a..865ab92545a 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until_deadlock_bug.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until_deadlock_bug.pass.cpp @@ -47,7 +47,7 @@ void blocked_reader() { m.unlock_shared(); } -int main() +int main(int, char**) { typedef std::chrono::steady_clock Clock; @@ -66,4 +66,6 @@ int main() t1.join(); t2.join(); t3.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/assign.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/assign.fail.cpp index 902b5ec42a6..d0fabc678f2 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/assign.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/assign.fail.cpp @@ -14,9 +14,11 @@ #include <mutex> -int main() +int main(int, char**) { std::timed_mutex m0; std::timed_mutex m1; m1 = m0; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/copy.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/copy.fail.cpp index 803b330d6a9..a3efb2feeee 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/copy.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/copy.fail.cpp @@ -14,8 +14,10 @@ #include <mutex> -int main() +int main(int, char**) { std::timed_mutex m0; std::timed_mutex m1(m0); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/default.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/default.pass.cpp index aae979043bf..c879f192ee1 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/default.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/default.pass.cpp @@ -16,7 +16,9 @@ #include <mutex> -int main() +int main(int, char**) { std::timed_mutex m; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/lock.pass.cpp index 7b351829ab4..8ef3a83471b 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/lock.pass.cpp @@ -39,11 +39,13 @@ void f() assert(d < ms(50)); // within 50ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(ms(250)); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock.pass.cpp index d61f62635e8..7398b7f6d0b 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock.pass.cpp @@ -41,11 +41,13 @@ void f() assert(d < ms(200)); // within 200ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(ms(250)); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_for.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_for.pass.cpp index 2e050d91702..0103cdf6419 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_for.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_for.pass.cpp @@ -47,7 +47,7 @@ void f2() assert(d < ms(50)); // within 50ms } -int main() +int main(int, char**) { { m.lock(); @@ -63,4 +63,6 @@ int main() m.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_until.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_until.pass.cpp index adf711593c4..350bb767d48 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_until.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_until.pass.cpp @@ -47,7 +47,7 @@ void f2() assert(d < ms(50)); // within 50ms } -int main() +int main(int, char**) { { m.lock(); @@ -63,4 +63,6 @@ int main() m.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/assign.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/assign.fail.cpp index e34b2b9980a..44be06d6754 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/assign.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/assign.fail.cpp @@ -14,9 +14,11 @@ #include <mutex> -int main() +int main(int, char**) { std::recursive_timed_mutex m0; std::recursive_timed_mutex m1; m1 = m0; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/copy.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/copy.fail.cpp index cbdd2eb634a..154a0192d14 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/copy.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/copy.fail.cpp @@ -14,8 +14,10 @@ #include <mutex> -int main() +int main(int, char**) { std::recursive_timed_mutex m0; std::recursive_timed_mutex m1(m0); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/default.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/default.pass.cpp index 98de22eccc8..ee6124c027b 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/default.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/default.pass.cpp @@ -16,7 +16,9 @@ #include <mutex> -int main() +int main(int, char**) { std::recursive_timed_mutex m; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/lock.pass.cpp index aba747b9520..adb54872e9b 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/lock.pass.cpp @@ -43,11 +43,13 @@ void f() assert(d < ms(50)); // within 50ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(ms(250)); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock.pass.cpp index 9d73bb57f33..05b22c0deb1 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock.pass.cpp @@ -43,11 +43,13 @@ void f() assert(d < ms(200)); // within 200ms } -int main() +int main(int, char**) { m.lock(); std::thread t(f); std::this_thread::sleep_for(ms(250)); m.unlock(); t.join(); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_for.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_for.pass.cpp index feab814953b..9e5ad5ee9a5 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_for.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_for.pass.cpp @@ -49,7 +49,7 @@ void f2() assert(d < ns(50000000)); // within 50ms } -int main() +int main(int, char**) { { m.lock(); @@ -65,4 +65,6 @@ int main() m.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_until.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_until.pass.cpp index b795315b28d..f6b9d106a1b 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_until.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_until.pass.cpp @@ -49,7 +49,7 @@ void f2() assert(d < ms(50)); // within 50ms } -int main() +int main(int, char**) { { m.lock(); @@ -65,4 +65,6 @@ int main() m.unlock(); t.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.once/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.once/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.once/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.once/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.callonce/call_once.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.callonce/call_once.pass.cpp index be5056e40f7..398ee058c12 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.callonce/call_once.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.callonce/call_once.pass.cpp @@ -186,7 +186,7 @@ struct RefQual #endif // TEST_STD_VER >= 11 -int main() +int main(int, char**) { // check basic functionality { @@ -253,4 +253,6 @@ int main() assert(rq.rv_called == 1); } #endif // TEST_STD_VER >= 11 + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.callonce/race.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.callonce/race.pass.cpp index ebba7f3d4f4..511aa3e804b 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.callonce/race.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.callonce/race.pass.cpp @@ -37,11 +37,13 @@ void f0() assert(global == 1); } -int main() +int main(int, char**) { std::thread t0(f0); std::thread t1(f0); t0.join(); t1.join(); assert(global == 1); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.onceflag/assign.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.onceflag/assign.fail.cpp index dd6fe09c3b8..40d408d54ce 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.onceflag/assign.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.onceflag/assign.fail.cpp @@ -14,9 +14,11 @@ #include <mutex> -int main() +int main(int, char**) { std::once_flag f; std::once_flag f2; f2 = f; + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.onceflag/copy.fail.cpp b/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.onceflag/copy.fail.cpp index ca428ffb438..9b7c19a9672 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.onceflag/copy.fail.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.onceflag/copy.fail.cpp @@ -14,8 +14,10 @@ #include <mutex> -int main() +int main(int, char**) { std::once_flag f; std::once_flag f2(f); + + return 0; } diff --git a/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.onceflag/default.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.onceflag/default.pass.cpp index 4a1655ffeba..28d93dc7f38 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.onceflag/default.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.once/thread.once.onceflag/default.pass.cpp @@ -15,7 +15,7 @@ #include <mutex> #include "test_macros.h" -int main() +int main(int, char**) { { std::once_flag f; @@ -27,4 +27,6 @@ int main() (void)f; } #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.req/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.req/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.req/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.req/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.req/thread.req.exception/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.req/thread.req.exception/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.req/thread.req.exception/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.req/thread.req.exception/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.req/thread.req.lockable/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.req/thread.req.lockable/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.req/thread.req.lockable/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.req/thread.req.lockable/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.basic/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.basic/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.basic/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.basic/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.general/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.general/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.general/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.general/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.req/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.req/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.req/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.req/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.timed/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.timed/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.timed/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.req/thread.req.lockable/thread.req.lockable.timed/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.req/thread.req.native/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.req/thread.req.native/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.req/thread.req.native/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.req/thread.req.native/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.req/thread.req.paramname/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.req/thread.req.paramname/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.req/thread.req.paramname/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.req/thread.req.paramname/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.req/thread.req.timing/nothing_to_do.pass.cpp b/libcxx/test/std/thread/thread.req/thread.req.timing/nothing_to_do.pass.cpp index f77636c8475..1f764da05d6 100644 --- a/libcxx/test/std/thread/thread.req/thread.req.timing/nothing_to_do.pass.cpp +++ b/libcxx/test/std/thread/thread.req/thread.req.timing/nothing_to_do.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.algorithm/swap.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.algorithm/swap.pass.cpp index 64a41368627..68f20d7532b 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.algorithm/swap.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.algorithm/swap.pass.cpp @@ -41,7 +41,7 @@ public: int G::n_alive = 0; bool G::op_run = false; -int main() +int main(int, char**) { { G g; @@ -54,4 +54,6 @@ int main() assert(t1.get_id() == id0); t1.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.assign/copy.fail.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.assign/copy.fail.cpp index 1afaaf7bd61..e67ceea5db6 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.assign/copy.fail.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.assign/copy.fail.cpp @@ -40,11 +40,13 @@ public: int G::n_alive = 0; bool G::op_run = false; -int main() +int main(int, char**) { { std::thread t0(G()); std::thread t1; t1 = t0; } + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.assign/move.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.assign/move.pass.cpp index e2f3d38fc06..cbc32c8c2ce 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.assign/move.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.assign/move.pass.cpp @@ -41,7 +41,7 @@ public: int G::n_alive = 0; bool G::op_run = false; -int main() +int main(int, char**) { { assert(G::n_alive == 0); @@ -59,4 +59,6 @@ int main() assert(G::n_alive == 0); assert(G::op_run); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.assign/move2.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.assign/move2.pass.cpp index 9a4d6e91020..81c6d77e8a7 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.assign/move2.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.assign/move2.pass.cpp @@ -51,7 +51,7 @@ void f1() std::_Exit(0); } -int main() +int main(int, char**) { std::set_terminate(f1); { @@ -61,4 +61,6 @@ int main() t0 = std::move(t1); assert(false); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/F.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/F.pass.cpp index af2450f182f..13c69180a4d 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/F.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/F.pass.cpp @@ -144,7 +144,7 @@ void test_throwing_new_during_thread_creation() { #endif } -int main() +int main(int, char**) { test_throwing_new_during_thread_creation(); { @@ -200,4 +200,6 @@ int main() t.join(); } #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/constr.fail.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/constr.fail.cpp index c24b0413b20..26231373f80 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/constr.fail.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/constr.fail.cpp @@ -18,8 +18,10 @@ #include <thread> #include <cassert> -int main() +int main(int, char**) { volatile std::thread t1; std::thread t2 ( t1, 1, 2.0 ); + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/copy.fail.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/copy.fail.cpp index 4a2e6f0d44b..2a3632cd42f 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/copy.fail.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/copy.fail.cpp @@ -48,7 +48,7 @@ public: int G::n_alive = 0; bool G::op_run = false; -int main() +int main(int, char**) { { assert(G::n_alive == 0); @@ -62,4 +62,6 @@ int main() assert(G::n_alive == 0); assert(G::op_run); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/default.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/default.pass.cpp index d635470db31..135d3ceba99 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/default.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/default.pass.cpp @@ -17,8 +17,10 @@ #include <thread> #include <cassert> -int main() +int main(int, char**) { std::thread t; assert(t.get_id() == std::thread::id()); + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/move.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/move.pass.cpp index 7e34729b3a7..25703b2c3ca 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/move.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/move.pass.cpp @@ -50,7 +50,7 @@ public: int G::n_alive = 0; bool G::op_run = false; -int main() +int main(int, char**) { { G g; @@ -66,4 +66,6 @@ int main() assert(G::op_run); } assert(G::n_alive == 0); + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.destr/dtor.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.destr/dtor.pass.cpp index 202d61b8f22..320b4459b94 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.destr/dtor.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.destr/dtor.pass.cpp @@ -47,7 +47,7 @@ void f1() std::_Exit(0); } -int main() +int main(int, char**) { std::set_terminate(f1); { @@ -60,4 +60,6 @@ int main() } } assert(false); + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/assign.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/assign.pass.cpp index 4447600486a..fb4b7eb5ae0 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/assign.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/assign.pass.cpp @@ -17,7 +17,7 @@ #include <thread> #include <cassert> -int main() +int main(int, char**) { std::thread::id id0; std::thread::id id1; @@ -25,4 +25,6 @@ int main() assert(id1 == id0); id1 = std::this_thread::get_id(); assert(id1 != id0); + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/copy.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/copy.pass.cpp index 52d4f2cf377..f95617b4f53 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/copy.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/copy.pass.cpp @@ -17,9 +17,11 @@ #include <thread> #include <cassert> -int main() +int main(int, char**) { std::thread::id id0; std::thread::id id1 = id0; assert(id1 == id0); + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/default.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/default.pass.cpp index a9778f047d2..32a083ca8aa 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/default.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/default.pass.cpp @@ -17,8 +17,10 @@ #include <thread> #include <cassert> -int main() +int main(int, char**) { std::thread::id id; assert(id == std::thread::id()); + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/enabled_hashes.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/enabled_hashes.pass.cpp index 7a2fa869d62..3858508e1c9 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/enabled_hashes.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/enabled_hashes.pass.cpp @@ -18,9 +18,11 @@ #include "poisoned_hash_helper.hpp" -int main() { +int main(int, char**) { test_library_hash_specializations_available(); { test_hash_enabled_for_type<std::thread::id>(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/eq.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/eq.pass.cpp index cf89066a509..5c557fddc7f 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/eq.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/eq.pass.cpp @@ -18,7 +18,7 @@ #include <thread> #include <cassert> -int main() +int main(int, char**) { std::thread::id id0; std::thread::id id1; @@ -28,4 +28,6 @@ int main() id1 = std::this_thread::get_id(); assert(!(id1 == id0)); assert( (id1 != id0)); + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/lt.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/lt.pass.cpp index 69ea217b506..8af73045a79 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/lt.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/lt.pass.cpp @@ -20,7 +20,7 @@ #include <thread> #include <cassert> -int main() +int main(int, char**) { std::thread::id id0; std::thread::id id1; @@ -39,4 +39,6 @@ int main() assert( (id0 > id2)); assert( (id0 >= id2)); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/stream.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/stream.pass.cpp index d07f26b1698..a1541c12e22 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/stream.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/stream.pass.cpp @@ -20,9 +20,11 @@ #include <sstream> #include <cassert> -int main() +int main(int, char**) { std::thread::id id0 = std::this_thread::get_id(); std::ostringstream os; os << id0; + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/thread_id.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/thread_id.pass.cpp index 325c0bfebd4..80bcbf97c1d 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/thread_id.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/thread_id.pass.cpp @@ -24,7 +24,7 @@ #include "test_macros.h" -int main() +int main(int, char**) { std::thread::id id1; std::thread::id id2 = std::this_thread::get_id(); @@ -34,4 +34,6 @@ int main() ASSERT_NOEXCEPT(H()(id2)); H h; assert(h(id1) != h(id2)); + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/detach.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/detach.pass.cpp index 8debe7770dd..bf72e3437a4 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/detach.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/detach.pass.cpp @@ -61,7 +61,7 @@ bool G::op_run = false; void foo() {} -int main() +int main(int, char**) { { G g; @@ -86,4 +86,6 @@ int main() } } #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/get_id.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/get_id.pass.cpp index 99cdec9134c..006bc1e65c4 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/get_id.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/get_id.pass.cpp @@ -41,7 +41,7 @@ public: int G::n_alive = 0; bool G::op_run = false; -int main() +int main(int, char**) { { G g; @@ -54,4 +54,6 @@ int main() assert(t1.get_id() == std::thread::id()); t0.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/join.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/join.pass.cpp index c21de04ea34..b64a111c6be 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/join.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/join.pass.cpp @@ -46,7 +46,7 @@ bool G::op_run = false; void foo() {} -int main() +int main(int, char**) { { G g; @@ -73,4 +73,6 @@ int main() } } #endif + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/joinable.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/joinable.pass.cpp index 3db473ab181..6f1308cbad0 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/joinable.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/joinable.pass.cpp @@ -41,7 +41,7 @@ public: int G::n_alive = 0; bool G::op_run = false; -int main() +int main(int, char**) { { G g; @@ -50,4 +50,6 @@ int main() t0.join(); assert(!t0.joinable()); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/swap.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/swap.pass.cpp index 66c810b1b7e..f43805d7fe6 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/swap.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.member/swap.pass.cpp @@ -41,7 +41,7 @@ public: int G::n_alive = 0; bool G::op_run = false; -int main() +int main(int, char**) { { G g; @@ -54,4 +54,6 @@ int main() assert(t1.get_id() == id0); t1.join(); } + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.static/hardware_concurrency.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.static/hardware_concurrency.pass.cpp index 3500f2c169a..5493f27a494 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.static/hardware_concurrency.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.static/hardware_concurrency.pass.cpp @@ -17,7 +17,9 @@ #include <thread> #include <cassert> -int main() +int main(int, char**) { assert(std::thread::hardware_concurrency() > 0); + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.this/get_id.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.this/get_id.pass.cpp index 864518dd8ff..1bf46cdb54f 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.this/get_id.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.this/get_id.pass.cpp @@ -15,8 +15,10 @@ #include <thread> #include <cassert> -int main() +int main(int, char**) { std::thread::id id = std::this_thread::get_id(); assert(id != std::thread::id()); + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for_tested_elsewhere.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for_tested_elsewhere.pass.cpp index 59791c84cdb..7c8552ea865 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for_tested_elsewhere.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for_tested_elsewhere.pass.cpp @@ -16,6 +16,8 @@ // is therefore non-standard. For this reason the test lives under the 'libcxx' // subdirectory. -int main() +int main(int, char**) { + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_until.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_until.pass.cpp index 5fbaf9d8773..c73144db0c1 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_until.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_until.pass.cpp @@ -18,7 +18,7 @@ #include <cstdlib> #include <cassert> -int main() +int main(int, char**) { typedef std::chrono::system_clock Clock; typedef Clock::time_point time_point; @@ -30,4 +30,6 @@ int main() std::chrono::nanoseconds err = 5 * ms / 100; // The time slept is within 5% of 500ms assert(std::abs(ns.count()) < err.count()); + + return 0; } diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.this/yield.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.this/yield.pass.cpp index 5c1caa0cbe0..6f772b5c286 100644 --- a/libcxx/test/std/thread/thread.threads/thread.thread.this/yield.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.this/yield.pass.cpp @@ -15,7 +15,9 @@ #include <thread> #include <cassert> -int main() +int main(int, char**) { std::this_thread::yield(); + + return 0; } |