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.