[Boost-bugs] [Boost C++ Libraries] #5968: phoenix bind and signals2 signal connect fails to compile

Subject: [Boost-bugs] [Boost C++ Libraries] #5968: phoenix bind and signals2 signal connect fails to compile
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2011-10-03 09:23:14


#5968: phoenix bind and signals2 signal connect fails to compile
---------------------------------------+------------------------------------
 Reporter: Lars Viklund <zao@…> | Owner: theller
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: phoenix
  Version: Boost 1.47.0 | Severity: Problem
 Keywords: |
---------------------------------------+------------------------------------
 Using a Phoenix bind in a Signals2 signal fails to compile with errors in
 either fusion::category_of where actor is missing the category type (in
 1.47.0), or in phoenix visit_each (in trunk r74198).

 {{{#!c++
 #include <boost/phoenix.hpp>
 #include <boost/signals2.hpp>

 struct s
 {
         bool f(int, bool) { return true; }
 };

 int main()
 {
         s s_obj;
         boost::signals2::signal<bool (int, bool)> sig;
         sig.connect(
                 boost::phoenix::bind(
                         &s::f, &s_obj,
                         boost::phoenix::placeholders::arg1,
                         boost::phoenix::placeholders::arg2));
 }
 }}}

 Simplifying the bind to the following expression has the same results:
 {{{#!c++
 (val(&s_obj)->*&s::f)(arg1, arg2)
 }}}

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/5968>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:07 UTC