Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 570942

Summary: x11-misc/easystroke-0.6.0-r2 - In file included from actions.cc:16: /usr/include/sigc++-2.0/sigc++/functors/slot.h:211:30: error: void value not ignored as it ought to be
Product: Gentoo Linux Reporter: bitozoid
Component: Current packagesAssignee: Desktop Misc. Team <desktop-misc>
Status: RESOLVED FIXED    
Severity: normal CC: bitozoid, O01eg, pacho
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://bugs.gentoo.org/show_bug.cgi?id=569606
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 566328    
Attachments: Compilation log
'cave info'
easystroke-0.6.0-r2 build log

Description bitozoid 2016-01-05 09:06:00 UTC
Does not compile.

Reproducible: Always

Steps to Reproduce:
1. Just compile it.
cave resolve easystroke -x

Actual Results:  
...
/usr/include/sigc++-2.0/sigc++/functors/slot.h:211:30: error: void value not ignored as it ought to be
                (a_1, a_2, a_3);
...
/usr/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:128:48: error: return-statement with a value, in function returning 'void' [-fpermiss
ive]
     { return functor_(_A_arg1, _A_arg2, _A_arg3); }
...

Expected Results:  
Successful compilation.
Comment 1 bitozoid 2016-01-05 09:07:34 UTC
Created attachment 421944 [details]
Compilation log
Comment 2 bitozoid 2016-01-05 09:07:51 UTC
Created attachment 421946 [details]
'cave info'
Comment 3 Pacho Ramos gentoo-dev 2016-01-16 09:46:22 UTC
It builds fine for me
Comment 4 Peter Anderson 2016-03-16 22:51:59 UTC
Created attachment 428392 [details]
easystroke-0.6.0-r2 build log

I also encountered same build error (see attached build log) for easystroke-0.6.0-r2.

Found some potentially useful information at https://mail.gnome.org/archives/libsigc-list/2012-January/msg00000.html so created an easystroke-0.6.0-r3.ebuild (based on r2 version) and a patch (hack) which, when applied to easystroke source header 'actions.h', added following content near top of file:


#include <type_traits>
#include <sigc++/sigc++.h>

namespace sigc
{
    template <typename Functor>
    struct functor_trait<Functor, false>
    {
        typedef decltype (::sigc::mem_fun (std::declval<Functor&> (),
                                           &Functor::operator())) _intermediate;

        typedef typename _intermediate::result_type result_type;
        typedef Functor functor_type;
    };
}


The build of my r3 version then completed OK. Application appeared to run OK though my testing was limited to running and exploring some basic options. I _do not_ suggest this hack is the correct way to resolve the issue as I am not a programmer.
Comment 5 Jeroen Roovers (RETIRED) gentoo-dev 2020-02-08 13:38:57 UTC
Presumed fixed.