[Patch, Fortran] PR44646 - Add parser support for DO CONCURRENT
Tobias Burnus
burnus@net-b.de
Thu Sep 8 06:41:00 GMT 2011
Mikael Morin wrote:
> Patch is basically OK. One comment below.
>
>> diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c
>> index 436c160..3877711 100644
>> --- a/gcc/fortran/resolve.c
>> +++ b/gcc/fortran/resolve.c
>> @@ -3125,11 +3126,17 @@ resolve_function (gfc_expr *expr)
>> {
>> if (forall_flag)
>> - gfc_error ("reference to non-PURE function '%s' at %L inside a "
>> + gfc_error ("Reference to non-PURE function '%s' at %L inside a "
>> "FORALL %s", name,&expr->where,
>> forall_flag == 2 ? "mask" : "block");
>> + else if (do_concurrent_flag)
>> + gfc_error ("Reference to non-PURE function '%s' at %L inside a "
>> + "DO CONCURRENT block", name,&expr->where);
> You could distinguish between mask and block here, like it is done for forall
> just above
I have changed it to be in the line with FORALL.
I have also added EXEC_DO_CONCURRENT after EXEC_FORALL in
frontend-optimization.c as suggested by Thomas.
Committed as Rev. 178677.
Thanks for the thorough review!
Tobias
More information about the Fortran
mailing list