sigh: rollback some changes that apparently create issues with (very old) compilers (ie clang 6)

This commit is contained in:
Michele Caini
2022-10-26 12:37:46 +02:00
parent a02a7c67cb
commit 7c84ce666e

View File

@@ -360,9 +360,14 @@ class sink<sigh<Ret(Args...), Allocator>> {
using signal_type = sigh<Ret(Args...), Allocator>;
using difference_type = typename signal_type::container_type::difference_type;
template<auto Candidate, typename... Type>
static void release(Type... value_or_instance, void *signal) {
sink{*static_cast<signal_type *>(signal)}.disconnect<Candidate>(value_or_instance...);
template<auto Candidate, typename Type>
static void release(Type value_or_instance, void *signal) {
sink{*static_cast<signal_type *>(signal)}.disconnect<Candidate>(value_or_instance);
}
template<auto Candidate>
static void release(void *signal) {
sink{*static_cast<signal_type *>(signal)}.disconnect<Candidate>();
}
auto before(delegate<Ret(Args...)> call) {