diff options
author | Jakub Jelinek <jakub@redhat.com> | 2020-04-15 09:59:14 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2020-04-15 09:59:14 +0200 |
commit | 2dc9294c3c7c81a6d5e1d4dedf58fea87bbadde6 (patch) | |
tree | e5020dd979b8eb5897157a8c3adfd2ec55f78159 /libgcc | |
parent | e71b408aa242ffc76ffd19ebcdbd40279a1d9349 (diff) | |
download | gcc-2dc9294c3c7c81a6d5e1d4dedf58fea87bbadde6.zip gcc-2dc9294c3c7c81a6d5e1d4dedf58fea87bbadde6.tar.gz gcc-2dc9294c3c7c81a6d5e1d4dedf58fea87bbadde6.tar.bz2 |
openmp: Reject requires directives not at file or namespace scope [PR94593]
This change started with a bugreport about a typo in one requires testcase
(diagnosed with -Wunknown-pragmas only), but following discussion lead to
noting that we do not diagnose restriction that requires directives in
C/C++ may only appear at file or namespace scope; and several our tests
violated that.
2020-04-15 Jakub Jelinek <jakub@redhat.com>
PR c/94593
* c-parser.c (c_parser_pragma) <case PRAGMA_OMP_REQUIRES>: Reject
requires directive when not at file scope.
* parser.c (cp_parser_pragma) <case PRAGMA_OMP_REQUIRES>: Reject
requires directive when not at file or namespace scope.
* c-c++-common/gomp/requires-1.c: Fix a typo, requries -> requires.
Move directives to file scope.
(i): Remove.
* c-c++-common/gomp/requires-2.c: Move directives to file scope.
(i, foo): Remove.
* c-c++-common/gomp/requires-4.c: Move directives to file scope.
* c-c++-common/gomp/atomic-19.c: Move requires directive to file scope.
* c-c++-common/gomp/atomic-20.c: Likewise.
* c-c++-common/gomp/atomic-21.c: Likewise.
* c-c++-common/gomp/atomic-22.c: Likewise.
* gcc.dg/gomp/requires-1.c: New test.
* g++.dg/gomp/requires-1.C: New test.
* g++.dg/gomp/requires-2.C: New test.
* g++.dg/gomp/atomic-18.C: Move requires directive to file scope.
Diffstat (limited to 'libgcc')
0 files changed, 0 insertions, 0 deletions