From 264deecb16abcfc8ca8efe9b94b0ad55febd55cc Mon Sep 17 00:00:00 2001 From: Tobias Burnus Date: Thu, 8 Sep 2022 21:03:21 +0200 Subject: OpenMP: Document ompx warnings + add Fortran omx warning [PR106670] omp/ompx sentinels are for vendor extensions; as they might be required for the correctness of the program, a warning should be printable. This patch documents in the OpenMP 5.2 table the existing warnings, including the new warning for for fixed source form Fortran. PR fortran/106670 gcc/fortran/ChangeLog: * scanner.cc (skip_fixed_omp_sentinel): Add -Wsurprising warning for 'omx' sentinels with -fopenmp. * invoke.texi (-Wsurprising): Document additional warning case. libgomp/ChangeLog: * libgomp.texi (OpenMP 5.2): Add comment to ompx/omx entry. gcc/testsuite/ChangeLog: * c-c++-common/gomp/ompx-1.c: New test. * c-c++-common/gomp/ompx-2.c: New test. * g++.dg/gomp/ompx-attrs-1.C: New test. * gfortran.dg/gomp/ompx-1.f90: New test. * gfortran.dg/gomp/omx-1.f: New test. * gfortran.dg/gomp/omx-2.f: New test. --- libgomp/libgomp.texi | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'libgomp') diff --git a/libgomp/libgomp.texi b/libgomp/libgomp.texi index 8847f3e..3dc467a 100644 --- a/libgomp/libgomp.texi +++ b/libgomp/libgomp.texi @@ -361,7 +361,13 @@ to address of matching mapped list item per 5.1, Sect. 2.21.7.2 @tab N @tab @item @code{omp_in_explicit_task} routine and @emph{implicit-task-var} ICV @tab N @tab @item @code{omp}/@code{ompx}/@code{omx} sentinels and @code{omp_}/@code{ompx_} - namespaces @tab N/A @tab + namespaces @tab N/A + @tab warning for @code{omp/ompx} sentinels@footnote{@code{omp/ompx} + sentinels as C/C++ pragma and C++ attributes are warned for with + @code{-Wunknown-pragmas} (implied by @code{-Wall}) and @code{-Wattributes} + (enabled by default), respectively; for Fortran free-source code, there is + a warning enabled by default and for fixed-source code with + @code{-Wsurprising} (enabled by @code{-Wall})} @item Clauses on @code{end} directive can be on directive @tab N @tab @item Deprecation of no-argument @code{destroy} clause on @code{depobj} @tab N @tab -- cgit v1.1