1.2.1: compilation error: call of overloaded 'ptr_fun(<unresolved overloaded function type>)' is ambiguous
Summary:
When building inkscape 1.2.1 with gcc 10.3.0, glibmm-2.66.2 and libsigc++-2.10.8 (on NetBSD but I don't think that's relevant here), I see:
[ 97%] Building CXX object src/CMakeFiles/inkscape_base.dir/actions/actions-help-url.cpp.o
.../inkscape-1.2.1_2022-07-14_9c6d41e410/src/actions/actions-edit.cpp: In function 'void add_actions_edit(InkscapeApplication*)':
.../inkscape-1.2.1_2022-07-14_9c6d41e410/src/actions/actions-edit.cpp:325:111: error: call of overloaded 'ptr_fun(<unresolved overloaded function type>)' is ambiguous
325 | gapp->add_action( "clone", sigc::bind<InkscapeApplication*>(sigc::ptr_fun(&clone), app));
| ^
In file included from /usr/pkg/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:8,
from /usr/pkg/include/sigc++-2.0/sigc++/functors/slot.h:7,
from /usr/pkg/include/sigc++-2.0/sigc++/signal_base.h:27,
from /usr/pkg/include/sigc++-2.0/sigc++/signal.h:8,
from /usr/pkg/include/sigc++-2.0/sigc++/sigc++.h:123,
from /usr/pkg/include/glibmm-2.4/glibmm/signalproxy.h:27,
from /usr/pkg/include/glibmm-2.4/glibmm/objectbase.h:22,
from /usr/pkg/include/glibmm-2.4/glibmm/wrap.h:22,
from /usr/pkg/include/glibmm-2.4/glibmm/containerhandle_shared.h:24,
from /usr/pkg/include/glibmm-2.4/glibmm/arrayhandle.h:21,
from /usr/pkg/include/glibmm-2.4/glibmm.h:107,
from /usr/pkg/include/giomm-2.4/giomm.h:22,
from .../inkscape-1.2.1_2022-07-14_9c6d41e410/src/actions/actions-edit.cpp:14:
/usr/pkg/include/sigc++-2.0/sigc++/functors/ptr_fun.h:471:1: note: candidate: 'sigc::pointer_functor1<T_arg1, T_return> sigc::ptr_fun(T_return (*)(T_arg1)) [with T_arg1 = InkscapeApplicatio
n*; T_return = void]'
471 | ptr_fun(T_return (*_A_func)(T_arg1))
| ^~~~~~~
/usr/pkg/include/sigc++-2.0/sigc++/functors/ptr_fun.h:504:1: note: candidate: 'sigc::pointer_functor4<T_arg1, T_arg2, T_arg3, T_arg4, T_return> sigc::ptr_fun(T_return (*)(T_arg1, T_arg2, T_arg3, T_arg4)) [with T_arg1 = int (*)(void*); T_arg2 = void*; T_arg3 = int; T_arg4 = void*; T_return = int]'
504 | ptr_fun(T_return (*_A_func)(T_arg1, T_arg2, T_arg3, T_arg4))
| ^~~~~~~
I didn't find an open issue on this, and I checked the repository, but there was no change to that particular source file in the last month.