From f3f016dbaa0db9ae0f6706ccc6dee26770ac4d33 Mon Sep 17 00:00:00 2001 From: David Zarzycki Date: Tue, 23 Jun 2020 06:48:02 -0400 Subject: [PATCH] [libcxx tests] Clang is more strict now about coroutines As of 516803dc8685ebcc5bce38b05391958ffee22643, clang is now more strictly enforcing the coroutine specification. See: https://reviews.llvm.org/D82029 --- .../language.support/support.coroutines/dialect_support.pass.cpp | 2 +- .../coroutine.handle/coroutine.handle.prom/promise.pass.cpp | 2 +- .../support.coroutines/end.to.end/await_result.pass.cpp | 2 +- .../support.coroutines/end.to.end/bool_await_suspend.pass.cpp | 2 +- .../language.support/support.coroutines/end.to.end/expected.pass.cpp | 2 +- .../support.coroutines/end.to.end/fullexpr-dtor.pass.cpp | 2 +- .../language.support/support.coroutines/end.to.end/generator.pass.cpp | 2 +- .../language.support/support.coroutines/end.to.end/go.pass.cpp | 2 +- libcxx/test/support/coroutine_types.h | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/libcxx/test/libcxx/experimental/language.support/support.coroutines/dialect_support.pass.cpp b/libcxx/test/libcxx/experimental/language.support/support.coroutines/dialect_support.pass.cpp index 1699d67..2f2a578 100644 --- a/libcxx/test/libcxx/experimental/language.support/support.coroutines/dialect_support.pass.cpp +++ b/libcxx/test/libcxx/experimental/language.support/support.coroutines/dialect_support.pass.cpp @@ -25,7 +25,7 @@ struct MyFuture { struct promise_type { typedef coro::coroutine_handle HandleT; coro::suspend_never initial_suspend() { return sn; } - coro::suspend_always final_suspend() { return sa; } + coro::suspend_always final_suspend() noexcept { return sa; } coro::suspend_never yield_value(int) { return sn; } MyFuture get_return_object() { MyFuture f(HandleT::from_promise(*this)); diff --git a/libcxx/test/std/experimental/language.support/support.coroutines/coroutine.handle/coroutine.handle.prom/promise.pass.cpp b/libcxx/test/std/experimental/language.support/support.coroutines/coroutine.handle/coroutine.handle.prom/promise.pass.cpp index 200bb96..b6dc79e 100644 --- a/libcxx/test/std/experimental/language.support/support.coroutines/coroutine.handle/coroutine.handle.prom/promise.pass.cpp +++ b/libcxx/test/std/experimental/language.support/support.coroutines/coroutine.handle/coroutine.handle.prom/promise.pass.cpp @@ -32,7 +32,7 @@ struct MyCoro { void unhandled_exception() {} void return_void() {} coro::suspend_never initial_suspend() { return {}; } - coro::suspend_never final_suspend() { return {}; } + coro::suspend_never final_suspend() noexcept { return {}; } MyCoro get_return_object() { do_runtime_test(); return {}; diff --git a/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/await_result.pass.cpp b/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/await_result.pass.cpp index 86746f5..43c71f3 100644 --- a/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/await_result.pass.cpp +++ b/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/await_result.pass.cpp @@ -23,7 +23,7 @@ struct coro_t { return {}; } suspend_never initial_suspend() { return {}; } - suspend_never final_suspend() { return {}; } + suspend_never final_suspend() noexcept { return {}; } void return_void() {} static void unhandled_exception() {} }; diff --git a/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/bool_await_suspend.pass.cpp b/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/bool_await_suspend.pass.cpp index 679fccb..f9f9f7b 100644 --- a/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/bool_await_suspend.pass.cpp +++ b/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/bool_await_suspend.pass.cpp @@ -25,7 +25,7 @@ struct coro_t { return coroutine_handle::from_promise(*this); } suspend_never initial_suspend() { return {}; } - suspend_never final_suspend() { return {}; } + suspend_never final_suspend() noexcept { return {}; } void return_void() {} void unhandled_exception() {} }; diff --git a/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/expected.pass.cpp b/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/expected.pass.cpp index 3b227cf..a0c31b6 100644 --- a/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/expected.pass.cpp +++ b/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/expected.pass.cpp @@ -40,7 +40,7 @@ struct expected { Data* data; DataPtr get_return_object() { data = new Data{}; return {data}; } suspend_never initial_suspend() { return {}; } - suspend_never final_suspend() { return {}; } + suspend_never final_suspend() noexcept { return {}; } void return_value(T v) { data->val = std::move(v); data->error = {};} void unhandled_exception() {} }; diff --git a/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/fullexpr-dtor.pass.cpp b/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/fullexpr-dtor.pass.cpp index bb6fce5..441fec4 100644 --- a/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/fullexpr-dtor.pass.cpp +++ b/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/fullexpr-dtor.pass.cpp @@ -45,7 +45,7 @@ struct Bug { struct coro2 { struct promise_type { suspend_never initial_suspend() { return{}; } - suspend_never final_suspend() { return{}; } + suspend_never final_suspend() noexcept { return{}; } coro2 get_return_object() { return{}; } void return_void() {} Bug yield_value(int) { return {}; } diff --git a/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/generator.pass.cpp b/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/generator.pass.cpp index 08685b9..2c1e229 100644 --- a/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/generator.pass.cpp +++ b/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/generator.pass.cpp @@ -29,7 +29,7 @@ struct minig { return {}; } suspend_always initial_suspend() { return {}; } - suspend_always final_suspend() { return {}; } + suspend_always final_suspend() noexcept { return {}; } minig get_return_object() { return minig{this}; }; void return_void() {} void unhandled_exception() {} diff --git a/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/go.pass.cpp b/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/go.pass.cpp index b825fee..540498f 100644 --- a/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/go.pass.cpp +++ b/libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/go.pass.cpp @@ -46,7 +46,7 @@ struct goroutine suspend_never initial_suspend() { return {}; } - suspend_never final_suspend() { + suspend_never final_suspend() noexcept { return {}; } void return_void() {} diff --git a/libcxx/test/support/coroutine_types.h b/libcxx/test/support/coroutine_types.h index e5d40b1..04b27a1 100644 --- a/libcxx/test/support/coroutine_types.h +++ b/libcxx/test/support/coroutine_types.h @@ -20,7 +20,7 @@ template struct generator { return {}; } std::experimental::suspend_always initial_suspend() { return {}; } - std::experimental::suspend_always final_suspend() { return {}; } + std::experimental::suspend_always final_suspend() noexcept { return {}; } generator get_return_object() { return generator{this}; }; void return_void() {} void unhandled_exception() {} -- 2.7.4