]> git.ipfire.org Git - thirdparty/gcc.git/commit
c-c++-common/gomp/{attrs-,}metadirective-3.c: Fix expected result [PR118694]
authorTobias Burnus <tburnus@baylibre.com>
Mon, 26 May 2025 17:50:40 +0000 (19:50 +0200)
committerTobias Burnus <tburnus@baylibre.com>
Mon, 26 May 2025 17:50:40 +0000 (19:50 +0200)
commit5d6ed6d604ff949b650e48fa4eaed3ec8b6489c1
tree401a4ddb0a536d602d1235c23c479ddb1fd51357
parent97e8cd9295dadad32fb5866e96cb7e403c1d993d
c-c++-common/gomp/{attrs-,}metadirective-3.c: Fix expected result [PR118694]

With compilation for nvptx enabled, two issues showed up:
(a) "error: 'target' construct with nested 'teams' construct contains
     directives outside of the 'teams' construct"
    See PR comment 9 why this is difficult to fix.
Solution: Add dg-bogus and accept/expect the error for 'target offload_nvptx'.

(b) The assumptions about the dump for 'target offload_nvptx' were wrong
    as the metadirective was already expanded to a OMP_NEXT_VARIANT
    construct such that no 'omp metadirective' was left in either case.
Solution: Check that no 'omp metadirective' is left; additionally, expect
either OMP_NEXT_VARIANT (when offload_nvptx is available) or no 'teams'
directive at all (if not).

gcc/testsuite/ChangeLog:

PR middle-end/118694
* c-c++-common/gomp/attrs-metadirective-3.c: Change to never
expect 'omp metadirective' in the dump. If !offload_nvptx, check
that no 'teams' shows up in the dump; for offload_nvptx, expect
OMP_NEXT_VARIANT and an error about directive between 'target'
and 'teams'.
* c-c++-common/gomp/metadirective-3.c: Likewise.
gcc/testsuite/c-c++-common/gomp/attrs-metadirective-3.c
gcc/testsuite/c-c++-common/gomp/metadirective-3.c