Hi! On 2023-10-25T10:57:06+0200, I wrote: > With minor textual conflicts resolved, I've pushed this to master branch > in commit 3a3596389c2e539cb8fd5dc5784a4e2afe193a2a > "OpenACC 2.7: Implement self clause for compute constructs", see > attached. > > > I'll then apply/submit a number of follow-on commits. I found this: > --- a/gcc/c/c-parser.cc > +++ b/gcc/c/c-parser.cc > static tree > c_parser_oacc_all_clauses (c_parser *parser, omp_clause_mask mask, > - const char *where, bool finish_p = true) > + const char *where, bool finish_p = true, > + bool compute_p = false) > { > tree clauses = NULL; > bool first = true; > @@ -18064,7 +18100,18 @@ c_parser_oacc_all_clauses (c_parser *parser, omp_clause_mask mask, > c_parser_consume_token (parser); > > here = c_parser_peek_token (parser)->location; > - c_kind = c_parser_omp_clause_name (parser); > + > + /* For OpenACC compute directives */ > + if (compute_p > + && c_parser_next_token_is (parser, CPP_NAME) > + && !strcmp (IDENTIFIER_POINTER (c_parser_peek_token (parser)->value), > + "self")) > + { > + c_kind = PRAGMA_OACC_CLAUSE_SELF; > + c_parser_consume_token (parser); > + } > + else > + c_kind = c_parser_omp_clause_name (parser); ..., and similarly in the C++ and (to a lesser extent) Fortran front ends a bit twisted, and pushed to master branch commit c92509d9fd98e02d17ab1610f696c88f606dcdf4 "Disentangle handling of OpenACC 'host', 'self' pragma tokens", see attached. Grüße Thomas ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955