Re: [v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-09-26 Thread Christophe Lyon
Hi Jonathan, On 23 September 2016 at 12:41, Jonathan Wakely wrote: > On 22/09/16 20:22 +0200, Christophe Lyon wrote: >> >> On 22 September 2016 at 15:25, Jonathan Wakely wrote: >>> >>> On 22/09/16 12:15 +0100, Jonathan Wakely wrote: On 22/09/16 11:16 +0100, Jonathan Wakely wrote:

Re: [v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-09-23 Thread Jonathan Wakely
On 22/09/16 20:22 +0200, Christophe Lyon wrote: On 22 September 2016 at 15:25, Jonathan Wakely wrote: On 22/09/16 12:15 +0100, Jonathan Wakely wrote: On 22/09/16 11:16 +0100, Jonathan Wakely wrote: (Somebody should fix PR58938 so exception_ptr is portable). Christophe, would you be able

Re: [v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-09-22 Thread Christophe Lyon
On 22 September 2016 at 13:15, Jonathan Wakely wrote: > On 22/09/16 11:16 +0100, Jonathan Wakely wrote: >> >> (Somebody should fix PR58938 so exception_ptr is portable). > > > Christophe, would you be able to test this patch? > > It uses a single global mutex for exception_ptr objects, which doesn

Re: [v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-09-22 Thread Christophe Lyon
On 22 September 2016 at 15:25, Jonathan Wakely wrote: > On 22/09/16 12:15 +0100, Jonathan Wakely wrote: >> >> On 22/09/16 11:16 +0100, Jonathan Wakely wrote: >>> >>> (Somebody should fix PR58938 so exception_ptr is portable). >> >> >> Christophe, would you be able to test this patch? >> >> It uses

Re: [v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-09-22 Thread Jonathan Wakely
On 22/09/16 12:15 +0100, Jonathan Wakely wrote: On 22/09/16 11:16 +0100, Jonathan Wakely wrote: (Somebody should fix PR58938 so exception_ptr is portable). Christophe, would you be able to test this patch? It uses a single global mutex for exception_ptr objects, which doesn't scale well but t

Re: [v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-09-22 Thread Jonathan Wakely
On 22/09/16 11:16 +0100, Jonathan Wakely wrote: (Somebody should fix PR58938 so exception_ptr is portable). Christophe, would you be able to test this patch? It uses a single global mutex for exception_ptr objects, which doesn't scale well but that probably isn't a problem for processors witho

Re: [v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-09-22 Thread Jonathan Wakely
On 22/09/16 12:41 +0300, Ville Voutilainen wrote: On 22 September 2016 at 12:37, Christophe Lyon wrote: Does the attached patch fix the problem? Yes, thanks! Here be the changelog. Jonathan, ok for trunk? Patch attached again for convenience. OK, thanks. (Somebody should fix PR58938 so e

Re: [v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-09-22 Thread Ville Voutilainen
On 22 September 2016 at 12:37, Christophe Lyon wrote: >> Does the attached patch fix the problem? > > Yes, thanks! Here be the changelog. Jonathan, ok for trunk? Patch attached again for convenience. 2016-09-22 Ville Voutilainen Fix tests on old arm platforms for optional. * testsuit

Re: [v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-09-22 Thread Christophe Lyon
On 22 September 2016 at 11:05, Ville Voutilainen wrote: > On 22 September 2016 at 11:55, Christophe Lyon > wrote: >> The new test 77288.cc fails on old arm targets (armv5t): >> /aci-gcc-fsf/sources/gcc-fsf/gccsrc/libstdc++-v3/testsuite/20_util/optional/77288.cc: >> In function 'void test01()': >>

Re: [v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-09-22 Thread Ville Voutilainen
On 22 September 2016 at 11:55, Christophe Lyon wrote: > The new test 77288.cc fails on old arm targets (armv5t): > /aci-gcc-fsf/sources/gcc-fsf/gccsrc/libstdc++-v3/testsuite/20_util/optional/77288.cc: > In function 'void test01()': > /aci-gcc-fsf/sources/gcc-fsf/gccsrc/libstdc++-v3/testsuite/20_ut

Re: [v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-09-22 Thread Christophe Lyon
Hi, On 21 September 2016 at 21:42, Ville Voutilainen wrote: > On 21 September 2016 at 12:31, Jonathan Wakely wrote: >> On 06/09/16 09:00 +0300, Ville Voutilainen wrote: >>> >>>PR libstdc++/77288 >>>* include/std/optional (__is_optional_impl, __is_optional): Remove. >>>(__converts_fr

Re: [v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-09-21 Thread Ville Voutilainen
On 21 September 2016 at 12:31, Jonathan Wakely wrote: > On 06/09/16 09:00 +0300, Ville Voutilainen wrote: >> >>PR libstdc++/77288 >>* include/std/optional (__is_optional_impl, __is_optional): Remove. >>(__converts_from_optional, __assigns_from_optional): New. >>(optional(_Up&&)): U

Re: [v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-09-21 Thread Jonathan Wakely
On 06/09/16 09:00 +0300, Ville Voutilainen wrote: PR libstdc++/77288 * include/std/optional (__is_optional_impl, __is_optional): Remove. (__converts_from_optional, __assigns_from_optional): New. (optional(_Up&&)): Use is_same instead of __is_optional. (optional(const optional<_Up>&

Re: [v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-09-05 Thread Ville Voutilainen
On 23 August 2016 at 17:17, Ville Voutilainen wrote: > Tested on Linux-x64. > > N.B. I know that the assignment operators have constraints in template > parameters, I want to move them to the return type separately. > > N.B2. This fixes the bug for std::optional only; I plan to port the fix > to s

[v3 PATCH] PR libstdc++/77288 and the newest proposed resolution for LWG 2756

2016-08-23 Thread Ville Voutilainen
Tested on Linux-x64. N.B. I know that the assignment operators have constraints in template parameters, I want to move them to the return type separately. N.B2. This fixes the bug for std::optional only; I plan to port the fix to std::experimental::optional in a separate patch, and then backport