[Boost-bugs] [Boost C++ Libraries] #10632: Problem with range transform with gcc-4.8 optimized

Subject: [Boost-bugs] [Boost C++ Libraries] #10632: Problem with range transform with gcc-4.8 optimized
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2014-10-07 15:52:45


#10632: Problem with range transform with gcc-4.8 optimized
--------------------------------------+------------------------
 Reporter: Fabien Nendaz <fabien@…> | Owner: neilgroves
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: range
  Version: Boost 1.55.0 | Severity: Problem
 Keywords: |
--------------------------------------+------------------------
 With gcc4.8, if the option -O is used, the operation " |
 transformed(arg1)" on a transformed range leads to unexpected results.

 E.g. if "initialVec" is a vector containing any values, the following line
 gives a null resultVec:[[BR]]
 auto resultVec = initialVec | transformed( arg1 * 2 ) | transformed( arg1
 );

 This problem is also present with clang (optimized) and visual studio 2013
 (in release), but not in debug modes, and not with gcc-4.6.

 Note that an operation in the second transformed remove this problem: the
 following code is working as expected:[[BR]]
 auto resultVec = initialVec | transformed( arg1 * 2 ) | transformed( arg1
 * 1 );

 This problem has been reproduced with boost 1.49, 1.55 and 1.56.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/10632>
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:17 UTC