[OpenACC] More precise diagnostics for 'gang', 'worker', 'vector' clauses with argume...
authorThomas Schwinge <thomas@codesourcery.com>
Tue, 27 Oct 2020 16:13:16 +0000 (17:13 +0100)
committerThomas Schwinge <thomas@codesourcery.com>
Tue, 3 Nov 2020 08:13:07 +0000 (09:13 +0100)
commitbeddd1762ad2bbe84dd776c54489153f83f21e56
tree286689615ae9379690336505df761459d371cfd4
parentf5e18dd9c7dacc9671044fc669bd5c1b26b6bdba
[OpenACC] More precise diagnostics for 'gang', 'worker', 'vector' clauses with arguments on 'loop' only allowed in 'kernels' regions

Instead of at the location of the 'loop' directive, 'error_at' the location of
the improper clause, and 'inform' at the location of the enclosing parent
compute construct/routine.

The Fortran testcases come with some XFAILing, to be resolved later.

gcc/
* omp-low.c (scan_omp_for) <OpenACC>: More precise diagnostics for
'gang', 'worker', 'vector' clauses with arguments only allowed in
'kernels' regions.
gcc/testsuite/
* c-c++-common/goacc/pr92793-1.c: Extend.
* gfortran.dg/goacc/pr92793-1.f90: Likewise.
gcc/omp-low.c
gcc/testsuite/c-c++-common/goacc/pr92793-1.c
gcc/testsuite/gfortran.dg/goacc/pr92793-1.f90