From a7d844d0dc7f4108ff63f8af0b9617d93f2ccd6f Mon Sep 17 00:00:00 2001 From: Denis Blank Date: Tue, 27 Feb 2018 17:18:52 +0100 Subject: [PATCH] Fix some permissive issues --- include/continuable/detail/base.hpp | 2 +- include/continuable/detail/composition_any.hpp | 4 ++-- test/playground/test-playground.cpp | 1 + 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/include/continuable/detail/base.hpp b/include/continuable/detail/base.hpp index ce861c0..71f1cd6 100644 --- a/include/continuable/detail/base.hpp +++ b/include/continuable/detail/base.hpp @@ -504,7 +504,7 @@ auto chain_continuation(Continuation&& continuation, Callback&& callback, static_assert(is_continuable>{}, "Expected a continuation!"); - using Hint = decltype(hints::hint_of(traits::identity_of(continuation))); + using Hint = decltype(hints::hint_of(traits::identify())); constexpr auto next_hint = next_hint_of(std::integral_constant{}, traits::identify{}, Hint{}); diff --git a/include/continuable/detail/composition_any.hpp b/include/continuable/detail/composition_any.hpp index 5e28fa3..3a0fafe 100644 --- a/include/continuable/detail/composition_any.hpp +++ b/include/continuable/detail/composition_any.hpp @@ -113,9 +113,9 @@ struct check_pack_empty { /// A callable object to determine the shared result between all continuations struct determine_shared_result { template - constexpr auto operator()(T&... args) const noexcept { + constexpr auto operator()(T&&...) const noexcept { return common_result_of(hints::signature_hint_tag<>{}, - hints::hint_of(traits::identity_of(args))...); + hints::hint_of(traits::identify())...); } private: diff --git a/test/playground/test-playground.cpp b/test/playground/test-playground.cpp index 17ead1f..151cffb 100644 --- a/test/playground/test-playground.cpp +++ b/test/playground/test-playground.cpp @@ -126,5 +126,6 @@ int main(int, char**) { cti::make_ready_continuable(0, 1), 2) .then([](int a0, int a1, int a2) { // ... + util::unused(a0, a1, a2); }); }