Re: [Boost-bugs] [Boost C++ Libraries] #5408: fold(transform(.... )) gives erroneous result: dangling reference?

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #5408: fold(transform(.... )) gives erroneous result: dangling reference?
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2011-04-01 23:25:27


#5408: fold(transform(.... )) gives erroneous result: dangling reference?
-------------------------------+--------------------------------------------
  Reporter: joe@… | Owner: djowel
      Type: Bugs | Status: new
 Milestone: To Be Determined | Component: fusion
   Version: Boost 1.47.0 | Severity: Problem
Resolution: | Keywords:
-------------------------------+--------------------------------------------
Changes (by djowel):

 * cc: joel@… (added)

Comment:

 I suggest you use Phoenix-3 instead. It is in the Boost trunk. The problem
 here is that Phoenix-2 has a old and flaky result-type deduction scheme.
 Phoenix-3 is better. The changes required are minimal. First use the
 proper includes:

   #include <boost/phoenix/core.hpp>
   #include <boost/phoenix/operator.hpp>
   #include <boost/phoenix/function.hpp>

 Then, change the result-of of error_function3:

     typedef OutputType result_type;

 With the changes, I am getting:

   Should be the same: 2 =? 2
   2

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/5408#comment:2>
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:06 UTC