Boost logo

Boost :

Subject: Re: [boost] [test] Trunk broken: What happened to test_exec_monitor?
From: Jürgen Hunold (juergen.hunold_at_[hidden])
Date: 2011-10-02 16:54:55


Hi Gennadiy,

On Sunday, 2. October 2011 20:44:10 Gennadiy Rozental wrote:
> Jürgen Hunold <juergen.hunold <at> ivembh.de> writes:
> > And gcc-4.6.2 fails to compile the changed execution_monitor.cpp
> >
> > error: no matching function for call to
> > ‘execution_monitor::execute(forward)’
>
> Can you tell why it fails to perform implicit construction of
> boost::function<int ()>? Should I use explicit one?

It seems the nested struct is the problem.
clang trunk compiles, but warns:

warning: template argument uses local type 'boost::execution_monitor::forward'
[-Wlocal-type-template-args]

moving the struct "forward" out of the function make gcc compile this.
Just putting this into the "detail" namespace works. Please find a quick patch
attached. (git diff from git svn).

Yours,

Jürgen

-- 
Dipl.-Math. Jürgen Hunold       | IVE mbH
Software-Entwickler             | Lützerodestraße 10 
Tel: +49 511 897668 33          | 30161 Hannover, Germany
Fax: +49 511 897668 29          | http://www.ivembh.de
juergen.hunold_at_[hidden]        | 
                                | Geschäftsführer:
Sitz des Unternehmens: Hannover | Univ.-Prof. Dr.-Ing. Thomas Siefer               
Amtsgericht Hannover, HRB 56965 | PD Dr.-Ing. Alfons Radtke  



Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk