Boost logo

Boost-Maint :

Subject: Re: [Boost-maint] Another patch request
From: Marshall Clow (mclow.lists_at_[hidden])
Date: 2014-02-03 19:43:10


On Feb 3, 2014, at 11:52 AM, Marshall Clow <mclow.lists_at_[hidden]> wrote:

> On Feb 3, 2014, at 7:42 AM, Marshall Clow <mclow.lists_at_[hidden]> wrote:
>
>> P.S. My next change to function will be as simple as the last one, but I’m going to make it a pull request to see how well it works.
>
>
> I lied. This was short enough that I didn’t do that.
> Next one for sure! (says Bullwinkle).
>
>
> This patch fixes two tests that were failing when built with libc++/c++11.

They are also failing for MSVC 12.0.

> The problem is in the tests - they were comparing two ostream & for equality.
>
> Strictly speaking, that’s not allowed.
> What was happening in C++03 was that they were being implicitly converted to void *, and the pointers compared. (this allowed the “if ( !stream)” idiom.
> In C++11, the conversion is to bool (not void *), and it is explicit - so this code no longer compiles:
> std::cout == std::cout.
>
> I changed the tests to use a different structure there, one with an actual operator==.
> (and removed some tabs)
>
> This should give Boost.Function an (almost) completely green test matrix.
>
> — Marshall
>
> <function2.patch>


Boost-Maint list run by bdawes at acm dot org