On Mon, Jun 07, 2021 at 03:21:10PM +0200, Tobias Burnus wrote: > +static void > +gfc_add_clause_implicitly (gfc_omp_clauses *clauses_out, > + gfc_omp_clauses *clauses_in, > + bool is_target, bool is_parallel_do) > +{ > + int clauselist_to_add = is_target ? OMP_LIST_MAP : OMP_LIST_SHARED;
For SHARED and array sections on reduction shared should be for the whole variable rather than just the array section. But I guess that can be solved only when the support is there. > + if (clauses_out->lists[clauselist_to_add] > + && clauses_out->lists[clauselist_to_add] == > clauses_in->lists[clauselist_to_add]) Too long line. Otherwise LGTM. Jakub