https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66053
Bug ID: 66053
Summary: openmp target data mappings containing this pointers
Product: gcc
Version: 6.0
Status: UNCONFIRMED
Keywords: openacc, openmp
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: cesar at gcc dot gnu.org
CC: jakub at gcc dot gnu.org, tschwinge at gcc dot gnu.org
Target Milestone: ---
Created attachment 35486
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=35486&action=edit
omp target data map test
I know that the openmp spec states that incomplete types are prohibited from
being used in target data maps. However, what about this pointers? E.g.
#pragma omp target data map (tofrom:this[0:1])
In this case, the entire object is getting transferred to the device. Should
this be ok? Currently gcc emits an "expected unqualified-id before ‘this’"
error message. Maybe cp_parser_omp_var_list_no_open needs to be made aware of
this pointers?
I've seen some examples of openacc programs using this pointers, but the
openacc 2.0a spec is unclear on c++ in general. So, if this pointers aren't
supported in openmp, I'm not planning on supporting it in openacc until the
spec explicitly demands it.