<div dir="ltr">Hi all, <div><br></div><div>I'm attempting to get Timer to use boost's Signals2. When I compile, however, I get a warning and an error:</div><div><br></div><div><a href="http://pastebin.com/Vijr6Cfk">http://pastebin.com/Vijr6Cfk</a><br></div><div><br></div><div>The error is:</div><div><br></div><div><div>[ CXX ] vcl/source/window/cursor.cxx</div><div>[ CXX ] vcl/source/window/debugevent.cxx</div><div>In file included from /home/chris/repos/LibreOffice/core/workdir/UnpackedTarball/boost/boost/function/detail/maybe_include.hpp:13:0,</div><div>                 from /home/chris/repos/LibreOffice/core/workdir/UnpackedTarball/boost/boost/function/detail/function_iterate.hpp:14,</div><div>                 from /home/chris/repos/LibreOffice/core/workdir/UnpackedTarball/boost/boost/preprocessor/iteration/detail/iter/forward1.hpp:47,</div><div>                 from /home/chris/repos/LibreOffice/core/workdir/UnpackedTarball/boost/boost/function.hpp:64,</div><div>                 from /home/chris/repos/LibreOffice/core/workdir/UnpackedTarball/boost/boost/signals2/signal.hpp:18,</div><div>                 from /home/chris/repos/LibreOffice/core/include/vcl/timer.hxx:23,</div><div>                 from /home/chris/repos/LibreOffice/core/include/vcl/animate.hxx:24,</div><div>                 from /home/chris/repos/LibreOffice/core/include/vcl/graph.hxx:28,</div><div>                 from /home/chris/repos/LibreOffice/core/include/vcl/metaact.hxx:32,</div><div>                 from /home/chris/repos/LibreOffice/core/include/vcl/outdev.hxx:35,</div><div>                 from /home/chris/repos/LibreOffice/core/include/vcl/metric.hxx:25,</div><div>                 from /home/chris/repos/LibreOffice/core/include/vcl/svapp.hxx:41,</div><div>                 from /home/chris/repos/LibreOffice/core/vcl/source/window/cursor.cxx:20:</div><div>/home/chris/repos/LibreOffice/core/workdir/UnpackedTarball/boost/boost/function/function_template.hpp: In instantiation of ‘void boost::function0<R>::assign_to(Functor) [with Functor = void (vcl::Cursor::*)(); R = void]’:</div><div>/home/chris/repos/LibreOffice/core/workdir/UnpackedTarball/boost/boost/function/function_template.hpp:722:7:   required from ‘boost::function0<R>::function0(Functor, typename boost::enable_if_c<boost::type_traits::ice_not<boost::is_integral<Functor>::value>::value, int>::type) [with Functor = void (vcl::Cursor::*)(); R = void; typename boost::enable_if_c<boost::type_traits::ice_not<boost::is_integral<Functor>::value>::value, int>::type = int]’</div><div>/home/chris/repos/LibreOffice/core/workdir/UnpackedTarball/boost/boost/function/function_template.hpp:1069:16:   required from ‘boost::function<R()>::function(Functor, typename boost::enable_if_c<boost::type_traits::ice_not<boost::is_integral<Functor>::value>::value, int>::type) [with Functor = void (vcl::Cursor::*)(); R = void; typename boost::enable_if_c<boost::type_traits::ice_not<boost::is_integral<Functor>::value>::value, int>::type = int]’</div><div>/home/chris/repos/LibreOffice/core/workdir/UnpackedTarball/boost/boost/function/function_template.hpp:1124:5:   required from ‘typename boost::enable_if_c<boost::type_traits::ice_not<boost::is_integral<Functor>::value>::value, boost::function<R()>&>::type boost::function<R()>::operator=(Functor) [with Functor = void (vcl::Cursor::*)(); R = void; typename boost::enable_if_c<boost::type_traits::ice_not<boost::is_integral<Functor>::value>::value, boost::function<R()>&>::type = boost::function<void()>&]’</div><div>/home/chris/repos/LibreOffice/core/workdir/UnpackedTarball/boost/boost/signals2/detail/slot_template.hpp:156:24:   required from ‘void boost::signals2::slot<R(Args ...), SlotFunction>::init_slot_function(const F&) [with F = void (vcl::Cursor::*)(); SlotFunction = boost::function<void()>; R = void; Args = {}]’</div><div>/home/chris/repos/LibreOffice/core/workdir/UnpackedTarball/boost/boost/signals2/detail/slot_template.hpp:81:29:   required from ‘boost::signals2::slot<R(Args ...), SlotFunction>::slot(const F&) [with F = void (vcl::Cursor::*)(); SlotFunction = boost::function<void()>; R = void; Args = {}]’</div><div>/home/chris/repos/LibreOffice/core/vcl/source/window/cursor.cxx:174:83:   required from here</div><div>/home/chris/repos/LibreOffice/core/workdir/UnpackedTarball/boost/boost/function/function_template.hpp:924:9: error: no class template named ‘apply’ in ‘struct boost::detail::function::get_invoker0<boost::detail::function::member_ptr_tag>’</div><div>         handler_type;</div><div>         ^</div><div>make[1]: *** [/home/chris/repos/LibreOffice/core/workdir/CxxObject/vcl/source/window/cursor.o] Error 1</div><div>make[1]: *** Waiting for unfinished jobs....</div><div>make: *** [vcl.all] Error 2</div></div><div><br></div><div>Does anyone with any knowledge know where I might be going wrong?</div><div><br></div><div>You can review the patch at <a href="https://gerrit.libreoffice.org/#/c/12950/">https://gerrit.libreoffice.org/#/c/12950/</a></div><div><br></div><div>Thanks,</div><div>Chris</div></div>