Hi,

On 21 September 2016 at 21:42, Ville Voutilainen
<ville.voutilai...@gmail.com> wrote:
> On 21 September 2016 at 12:31, Jonathan Wakely <jwak...@redhat.com> 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&&)): Use is_same instead of __is_optional.
>>>    (optional(const optional<_Up>&)): Constrain with
>>>    __converts_from_optional.
>>>    (optional(optional<_Up>&&)): Likewise.
>>>    (operator=(_Up&&)): Use is_same instead of __is_optional, check
>>>    is_same and is_scalar.
>>>    (operator=(const optional<_Up>&)): Constrain with
>>>    __converts_from_optional and __assigns_from_optional.
>>>    (operator=(optional<_Up>&&)): Likewise.
>>>    * testsuite/20_util/optional/77288.cc: New.
>>>    * testsuite/20_util/optional/cons/value.cc: Adjust.
>>
>>
>> OK for trunk, thanks.
>
> Thanks, applied - I will cook up a separate patch for making the same
> fix for experimental::optional.
> The plan is to then backport that one to the gcc-6 branch.


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_util/optional/77288.cc:31:
error: 'exception_ptr' is not a member of 'std'
/aci-gcc-fsf/sources/gcc-fsf/gccsrc/libstdc++-v3/testsuite/20_util/optional/77288.cc:31:
error: template argument 1 is invalid
/aci-gcc-fsf/sources/gcc-fsf/gccsrc/libstdc++-v3/testsuite/20_util/optional/77288.cc:31:
error: template argument 1 is invalid
/aci-gcc-fsf/sources/gcc-fsf/gccsrc/libstdc++-v3/testsuite/20_util/optional/77288.cc:32:
error: 'exception_ptr' is not a member of 'std'
/aci-gcc-fsf/sources/gcc-fsf/gccsrc/libstdc++-v3/testsuite/20_util/optional/77288.cc:32:
error: template argument 1 is invalid

Christophe

Reply via email to