diff options
author | Tobias Burnus <tburnus@baylibre.com> | 2024-09-13 16:48:57 +0200 |
---|---|---|
committer | Tobias Burnus <tburnus@baylibre.com> | 2024-09-13 16:48:57 +0200 |
commit | 99988464fc86354f0359c0fd91eee444fb5bd8a2 (patch) | |
tree | 7077436e7a92d198838ca9006a40032a6b8229c3 /libiberty/simple-object-elf.c | |
parent | 508ef585243d4674d06b0737bfe8769fc18f824f (diff) | |
download | gcc-99988464fc86354f0359c0fd91eee444fb5bd8a2.zip gcc-99988464fc86354f0359c0fd91eee444fb5bd8a2.tar.gz gcc-99988464fc86354f0359c0fd91eee444fb5bd8a2.tar.bz2 |
Fortran: Fixes to OpenMP 'interop' directive parsing support
Handle lists as argument to 'fr' and 'attr'; fix parsing corner cases.
Additionally, 'fr' values are now internally stored as integer, permitting
the diagnoses (warning) for values not defined in the OpenMP additional
definitions document.
PR fortran/116661
gcc/fortran/ChangeLog:
* gfortran.h (gfc_omp_namelist): Rename 'init' members for clarity.
* match.cc (gfc_free_omp_namelist): Handle renaming.
* dump-parse-tree.cc (show_omp_namelist): Update for new format
and features.
* openmp.cc (gfc_match_omp_prefer_type): Parse list to 'fr' and 'attr';
store 'fr' values as integer.
(gfc_match_omp_init): Rename variable names.
gcc/ChangeLog:
* omp-api.h (omp_get_fr_id_from_name, omp_get_name_from_fr_id): New
prototypes.
* omp-general.cc (omp_get_fr_id_from_name, omp_get_name_from_fr_id):
New.
include/ChangeLog:
* gomp-constants.h (GOMP_INTEROP_IFR_LAST,
GOMP_INTEROP_IFR_SEPARATOR, GOMP_INTEROP_IFR_NONE): New.
gcc/testsuite/ChangeLog:
* gfortran.dg/gomp/interop-1.f90: Extend, update dg-*.
* gfortran.dg/gomp/interop-2.f90: Update dg-error.
* gfortran.dg/gomp/interop-3.f90: Add dg-warning.
Diffstat (limited to 'libiberty/simple-object-elf.c')
0 files changed, 0 insertions, 0 deletions