On 05-08-2014 11:40, Ken Moffat wrote:
>  On my current system (20140803), inkscape-0.48.5 failed to build
> against libsigc++-2.3.2 :
> 
> /usr/include/sigc++-2.0/sigc++/visit_each.h:169:64: error: cannot convert 
> ‘const sigc::adaptor_functor<sigc::bound_mem_functor0<void, SPDesktop> >’ to 
> ‘int’ in initialization
> /usr/include/sigc++-2.0/sigc++/visit_each.h:169:29: warning: unused variable 
> ‘do_visit_each’ [-Wunused-variable]
>  { sigc::visitor<T_functor>::do_visit_each(_A_action, _A_functor); }
>                              ^
>   CXX      device-manager.o
> Makefile:5958: recipe for target 'desktop.o' failed
> make[2]: *** [desktop.o] Error 1
> 
> 
>  This is the only package in my build which needs libsigc++, I have
> fixed this for the moment by reverting to libsigc++-2.3.1.
> 
>  Google found nothing useful - I'm on the bleeding edge again :) -
> so for the moment this is just a notification that there seems to be
> a problem with this combination.  I noticed the comments in the
> ticket that libsigc++ 2.3 turned out to be a development version.
> 
> ĸen
> 

ĸen, I'm sorry for that.

When updating, I rebuild and reinstalled cairomm-1.10.0 and
glibmm-2.40.0, but not Cdrdao-1.2.3. These were the packages depending
on libsigc++. I knew about the possibility of API break, was in the
News, one of the last commits did it:

{{{
Note: The implementation of bug #724496 breaks API for some users,
but it does not break ABI.
Only users who have added their own visit_each() overloads are affected by
the API break. Their programs will still compile, but there will be run-time
errors, if they rely on auto-disconnection of slots.
Updated instructions for users who implement their own adaptors are found
in the description of sigc::adapts<>.

* Replace visit_each() overloads by struct visitor<>.
  Add the test_visit_each test case.
  (Ryan Beasley, Kjell Ahlstedt) Bug #724496
* signal_impl::notify(): Don't delete signal_impl during erase().
  (Kjell Ahlstedt) Bug #564005 (Alexander Shaduri)
...
}}}

After spending some hours, I came with this idea, and produced a patch.

Please, try the attached patch reverting that commit. It is compressed,
uncompressed size > 70KB. If it works, how should we submit: .patch.xz
or .patch

-- 
[]s,
Fernando

Attachment: libsigc++-2.3.2-fix_API_visit_each-1.patch.xz
Description: Binary data

-- 
http://lists.linuxfromscratch.org/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to