This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: [PATCH] Integration of parallel standard algorithms for c++17
- From: Thomas Rodgers <trodgers at redhat dot com>
- To: Thomas Rodgers <trodgers at redhat dot com>
- Cc: Jonathan Wakely <jwakely at redhat dot com>, libstdc++ at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
- Date: Wed, 20 Mar 2019 13:25:21 -0700
- Subject: Re: [PATCH] Integration of parallel standard algorithms for c++17
- References: <xkqek1lksswb.fsf@trodgers.remote.f27> <1050db8c-2774-2210-dd39-12caa9bdb564@redhat.com> <20190207132629.GH17805@redhat.com> <xkqesgvspvpw.fsf@trodgers.remote.f27> <20190319202615.GK943@redhat.com> <xkqe4l7xpb0p.fsf@trodgers.remote.f27>
Ignore
Thomas Rodgers writes:
> Jonathan Wakely writes:
>
>> On 11/03/19 21:24 -0700, Thomas Rodgers wrote:
>>>Let's try this patch -
>>>
>>
>>
>> The feature test macro should be 201603L (in <execution> and
>> <version>):
>>
>> +// Feature test macro for parallel algorithms
>> +# define __cpp_lib_parallel_algorithm 201703L
>>
>> ***
>>
>> The new files have copyright dates of 2018, but it's taken so long to
>> get the licensing changes done and for me to review it that they need
>> to say "2018-2019" now:
>>
>> +++ b/libstdc++-v3/include/std/execution
>> @@ -0,0 +1,58 @@
>> +// <execution> -*- C++ -*-
>> +
>> +// Copyright (C) 2018 Free Software Foundation, Inc.
>>
>> ***
>>
>> The <execution> header warns if included pre-C++17 but it should just
>> not define anything:
>>
>> +#if __cplusplus < 201703L
>> +# include <bits/c++0x_warning.h>
>> +#else
>>
>> We only give that warning for C++11 headers, but for anything newer it
>> should be just:
>>
>> +#if __cplusplus >= 201703L
>
> Did you mean
>
> +#if __cplusplus >= 201603L
>
> ?
>
>>
>> ***
>>
>> There are still a couple of un-uglified names I noticed:
>> parallel_set_union_op, is_heap_until_local
>>
>> ***
>>
>> The copyright notices at the top of each file seem a bit out of place
>> in the GCC tree:
>>
>> +//===-- execution_defs.h --------------------------------------------------===//
>> +//
>> +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
>> +// See https://llvm.org/LICENSE.txt for license information.
>> +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
>> +//
>> +//===----------------------------------------------------------------------===//
>>
>> I wonder if we should put another comment before that, saying GCC uses
>> the PSTL code from the LLVM upstream, or something like that. That can
>> wait though.