Re: [Boost-bugs] [Boost C++ Libraries] #3246: Patch for compatibility with STLport

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #3246: Patch for compatibility with STLport
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2009-08-30 14:30:52


#3246: Patch for compatibility with STLport
-----------------------------------+----------------------------------------
  Reporter: andysem | Owner: rogeeff
      Type: Bugs | Status: closed
 Milestone: Boost 1.40.0 | Component: test
   Version: Boost Release Branch | Severity: Problem
Resolution: wontfix | Keywords: test stlport
-----------------------------------+----------------------------------------

Comment(by andysem):

 Replying to [comment:1 rogeeff]:
> 1. I do not want to disable warning=all for the sake of weird STL
 implementation. Unlike you can make it conditional.

 How can I do that? The warning=all option is hard-coded in the library
 Jamfile.

 PS: I see nothing weird in STLPort if it uses long long.

> 2. Why string concatenation does not produce string? What does it
 produce? Is it convertible to string? I believe exiting code standard
 complaint (unless you can prove me wrong) and it's problem with STLPort if
 it does not work.

 It's the whole point of expression templates - the result of an expression
 is a temporary that holds references to the initial arguments of the whole
 expression. This allows to efficiently allocate memory for strings once
 per the whole expression, instead of once per operator. The temporary is
 convertible to string, but it's not possible to perform conversion in
 every context.

 I'm not saying it's a bug in your code. I'm saying it's a useful feature
 in general, and the library code is not compatible with it. I ask you to
 reconsider your decision.

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