https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113006
Bug ID: 113006 Summary: OpenMP 5 - lvalue parsing support for map/to/from clause Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end Assignee: unassigned at gcc dot gnu.org Reporter: jules at gcc dot gnu.org Target Milestone: --- The following test: libgomp/testsuite/libgomp.c++/baseptrs-4.C partly depends on the following in-review patches: https://gcc.gnu.org/pipermail/gcc-patches/2023-September/629365.html https://gcc.gnu.org/pipermail/gcc-patches/2023-September/629364.html Tobias points out there is currently an unresolved OpenMP issue, 2618 ("Clarify behavior of mapping lvalues on target construct"), which talks about whether code like the following: map(*p = 10) map(x = 20) map(x ? y[0] : p[1]) map(f(y)) is valid or not. He writes that the sentiment was to require that a 'map' clause list item must have a base pointer or a base variable. As far as I know, none of these "problematic" cases are permitted by the above patches, but it might be worth following the OpenMP issue to make sure that nothing diverges.