aboutsummaryrefslogtreecommitdiff
path: root/gcc/c/c-parser.cc
diff options
context:
space:
mode:
authorJulian Brown <julian@codesourcery.com>2024-04-30 19:21:22 +0200
committerSandra Loosemore <sloosemore@baylibre.com>2025-05-15 20:25:49 +0000
commit7431820c24b68001c614b26208be9c9f53c712b8 (patch)
tree6a6a35b958cc3cd08776f81a73e3e9b40febb166 /gcc/c/c-parser.cc
parent3ea1f835c3775431634ffe1ad44b0c742664a3dd (diff)
downloadgcc-7431820c24b68001c614b26208be9c9f53c712b8.zip
gcc-7431820c24b68001c614b26208be9c9f53c712b8.tar.gz
gcc-7431820c24b68001c614b26208be9c9f53c712b8.tar.bz2
OpenMP: Allow complete replacement of clause during map/to/from expansion
At present, map/to/from clauses on OpenMP "target" directives may be expanded into several mapping nodes if they describe array sections with pointer or reference bases, or similar. This patch allows the original clause to be replaced during that expansion, mostly by passing the list pointer to the node to various functions rather than the node itself. This is needed by the following patch. There shouldn't be any functional changes introduced by this patch itself. 2023-09-05 Julian Brown <julian@codesourcery.com> gcc/c-family/ * c-common.h (expand_array_base, expand_component_selector, expand_map_clause): Adjust member declarations. * c-omp.cc (omp_expand_access_chain): Pass and return pointer to clause. (c_omp_address_inspector::expand_array_base): Likewise. (c_omp_address_inspector::expand_component_selector): Likewise. (c_omp_address_inspector::expand_map_clause): Likewise. gcc/c/ * c-typeck.cc (handle_omp_array_sections): Pass pointer to clause to process instead of clause. (c_finish_omp_clauses): Update calls to handle_omp_array_sections. Handle cases where initial clause might be replaced. gcc/cp/ * semantics.cc (handle_omp_array_sections): Pass pointer to clause instead of clause. Add PNEXT return parameter for next clause in list to process. (finish_omp_clauses): Update calls to handle_omp_array_sections. Handle cases where initial clause might be replaced.
Diffstat (limited to 'gcc/c/c-parser.cc')
0 files changed, 0 insertions, 0 deletions