[PATCH] Add noexcept to tuple<> and simplify tuple<T1,T2> noexcept-specifiers
Jonathan Wakely
jwakely@redhat.com
Mon Jun 3 09:46:00 GMT 2019
On 03/06/19 09:44 +0000, Szabolcs Nagy wrote:
>On 31/05/2019 15:58, Jonathan Wakely wrote:
>> Â Â Â Â * include/std/tuple (tuple<>): Add noexcept to allocator-extended
>> Â Â Â Â constructors.
>> Â Â Â Â (tuple<T1, T2>::__nothrow_default_constructible()): New helper
>> Â Â Â Â function.
>> Â Â Â Â (tuple<T1, T2>::tuple(), explicit tuple<T1, T2>::tuple()): Use helper.
>>
>> Tested powerpc64le-linux, committed to trunk.
>
>on aarch64* i see
>
>FAIL: g++.dg/cpp0x/noexcept15.C -std=c++14 (test for excess errors)
>
>In file included from /S/gcc/testsuite/g++.dg/cpp0x/noexcept15.C:4:
>/B/aarch64-none-linux-gnu/libstdc++-v3/include/type_traits: In instantiation of 'struct std::is_nothrow_move_constructible<Blob>':
>/S/gcc/testsuite/g++.dg/cpp0x/noexcept15.C:14:5: required from 'single<Tp>::single(single<Tp>&&) [with Tp = Blob]'
>/S/gcc/testsuite/g++.dg/cpp0x/noexcept15.C:23:51: required from 'constexpr single<typename std::decay<_Tp>::type> make_single(Tp&&) [with Tp =
>Blob&; typename std::decay<_Tp>::type = Blob]'
>/S/gcc/testsuite/g++.dg/cpp0x/noexcept15.C:31:18: required from here
>/B/aarch64-none-linux-gnu/libstdc++-v3/include/type_traits:1111:52: error: static assertion failed: template argument must be a complete class
>or an unbounded array
Yes, see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90695
More information about the Gcc-patches
mailing list