Repository navigation
[GNATS 26590] Spurious diagnostic no instance of function template " "boost::asio::any_completion_handler<Signatures...>::operator() [with Signatures=<void ()>]" matches the argument lis #140
jhsedg
started this conversation in
Issue Triage - General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Customer bug ID
any_completion_handler.cpp, 26590.C reduced test is 26590a.C
Description
cpfe -DTEST_NUMBER=1 --gnu_version=120100 -w --no_inlining --no_wrap_diagnostics --display_error --c++20 -tused Test_name.c
"../libs/asio/test/any_completion_handler.cpp", line 249: error #304: no instance of function template "boost::asio::a
ny_completion_handler<Signatures...>::operator() [with Signatures=<void ()>]" matches the argument list
object type is: boost::asio::any_completion_handler<void ()>
std::move(h1)();
^
"../boost/asio/any_completion_handler.hpp", line 747: note #3327-D: candidate function template "boost::asio::any_comp
letion_handler<Signatures...>::operator() [with Signatures=<void ()>]" failed deduction
auto operator()(Args&&... args)
^
"../libs/asio/test/any_completion_handler.cpp", line 260: error #304: no instance of function template "boost::asio::a
ny_completion_handler<Signatures...>::operator() [with Signatures=<void (boost::system::error_code)>]" matches the arg
ument list
argument types are: (boost::asio::error::misc_errors)
object type is: boost::asio::any_completion_handler<void (boost::system::error_code)>
std::move(h2)(boost::asio::error::eof);
^
"../boost/asio/any_completion_handler.hpp", line 747: note #3327-D: candidate function template "boost::asio::any_comp
letion_handler<Signatures...>::operator() [with Signatures=<void (boost::system::error_code)>]" failed deduction
auto operator()(Args&&... args)
^
2 errors detected in the compilation of "Test_name.c".
This is the reduced test:
//options_all: --gnu_version=120100 -w --no_inlining --no_wrap_diagnostics --displa
y_error --c++20 -tused
namespace boost {
namespace asio {
struct any_completion_handler_call_fns {
void call(int *);
};
struct any_completion_handler_fn_table
: private any_completion_handler_call_fns {
any_completion_handler_call_fns::call;
};
template <typename... Signatures> struct any_completion_handler {
any_completion_handler_fn_table fn_table_;
int impl_;
template <typename... Args>
auto operator()(Args... args) -> decltype(fn_table_.call(&impl_, args...));
};
} // namespace asio
} // namespace boost
void any_completion_handler_invocation_test() {
boost::asio::any_completion_handler __trans_tmp_1;
__trans_tmp_1();
}
cpfe -DTEST_NUMBER=1 --gnu_version=120100 -w --no_inlining --no_wrap_diagnostics --
display_error --c++20 -tused Test_name.c
"Test_name.c", line 21: error #304: no instance of function template "boost::asio::
any_completion_handler<Signatures...>::operator() [with Signatures=<>]" matches the
argument list
object type is: boost::asio::any_completion_handler<>
trans_tmp_1();
^
"Test_name.c", line 15: note #3327-D: candidate function template "boost::asio::any
_completion_handler<Signatures...>::operator() [with Signatures=<>]" failed deducti
on
auto operator()(Args... args) -> decltype(fn_table.call(&impl, args...));
^
1 error detected in the compilation of "Test_name.c".
26590a.C:cp::FAIL:
All reactions