Bug#805932: libsigc++-2.0-dev: Return-statement with a value, in function returning 'void'

Jason Crain jason at inspiresomeone.us
Sun May 22 22:07:30 UTC 2016


On Tue, Nov 24, 2015 at 07:22:46PM +1100, Riley Baird wrote:
> I currently maintain granule. In the process of C++11 migration, I have come
> across the following error message:
> 
> /usr/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:256:21: error: return-
> statement with a value, in function returning 'void' [-fpermissive]
> { return functor_(); }
> 
> I had thought that it was a problem with my package, but then I noticed that it
> was also present in another, unrelated package (#805681), so I think that it
> might be a problem with libsigc++-2.0-dev.

I downloaded granule, applied the patch in https://bugs.debian.org/805203,
and compiled it.  I get an error at this line:

src/EditControls.cpp:
...
194  m_actgroup->add (Gtk::Action::create ((*iter).get_name (),
195                                                                            (*iter).get_stock_id (),
196                                                                            (*iter).get_name (),
197                                                                            (*iter).get_tooltip ()),
198                                   Gtk::AccelKey ((*iter).get_accel_key ()),
199                                   bind<string>(mem_fun (*this,
200                                                                   &EditControls::on_edit_button_clicked),
201                                                            (*iter).get_name ()));
...

gcc seems to be getting confused about whether you want std::bind or
sigc::bind and it picks the wrong one.  Maybe there is a stray using
statement somewhere.  Changing it to sigc::bind fixes that error.



More information about the pkg-gnome-maintainers mailing list