diff options
author | Tobias Burnus <tburnus@baylibre.com> | 2025-04-08 13:47:53 +0200 |
---|---|---|
committer | Tobias Burnus <tburnus@baylibre.com> | 2025-04-08 13:47:53 +0200 |
commit | 0f77d88fdf797842ac0134a4013b4227dd5a658f (patch) | |
tree | 956fe2507125a5d335dbb918c2233b7a604e84aa /gcc/fortran/parse.cc | |
parent | d034c78c7be613db3c25fddec1dd50222327117b (diff) | |
download | gcc-0f77d88fdf797842ac0134a4013b4227dd5a658f.zip gcc-0f77d88fdf797842ac0134a4013b4227dd5a658f.tar.gz gcc-0f77d88fdf797842ac0134a4013b4227dd5a658f.tar.bz2 |
OpenMP: Fix append_args handling in modify_call_for_omp_dispatch
At tree level, the addr ref is also required for array dummy arguments,
contrary to C; the GOMP_interop calls in modify_call_for_omp_dispatch
were updated accordingly (using build_fold_addr_expr).
As the GOMP_interop calls had no location data associated with them,
the init call happened as soon as executing the previous line of code,
which was confusing; solution: use the location data of the function
call itself.
PR middle-end/119662
gcc/ChangeLog:
* gimplify.cc (modify_call_for_omp_dispatch): Fix GOMP_interop
arg passing; add location info to function calls.
libgomp/ChangeLog:
* testsuite/libgomp.c/append-args-fr-1.c: New test.
* testsuite/libgomp.c/append-args-fr.h: New test.
gcc/testsuite/ChangeLog:
* c-c++-common/gomp/append-args-interop.c: Update for fixed
GOMP_interop call.
* g++.dg/gomp/append-args-8.C: Likewise.
* gfortran.dg/gomp/append-args-interop.f90: Likewise.
Diffstat (limited to 'gcc/fortran/parse.cc')
0 files changed, 0 insertions, 0 deletions