openacc: Use class_pointer instead of pointer attribute for class types
Elsewhere in the Fortran front-end, the class_pointer attribute is used for BT_CLASS entities instead of the pointer attribute. This patch follows suit for OpenACC. I couldn't actually come up with a test case where this makes a difference (i.e., where "class_pointer" and "pointer" have different values at this point in the code), but this may nonetheless fix a latent bug. gcc/fortran/ * trans-openmp.c (gfc_trans_omp_clauses): Use class_pointer attribute for BT_CLASS.
This commit is contained in:
parent
cff6e8db88
commit
f743fe2316
1 changed files with 4 additions and 1 deletions
|
@ -2997,7 +2997,10 @@ gfc_trans_omp_clauses (stmtblock_t *block, gfc_omp_clauses *clauses,
|
|||
if (lastcomp->u.c.component->ts.type == BT_DERIVED
|
||||
|| lastcomp->u.c.component->ts.type == BT_CLASS)
|
||||
{
|
||||
if (sym_attr.pointer || (openacc && sym_attr.allocatable))
|
||||
bool pointer
|
||||
= (lastcomp->u.c.component->ts.type == BT_CLASS
|
||||
? sym_attr.class_pointer : sym_attr.pointer);
|
||||
if (pointer || (openacc && sym_attr.allocatable))
|
||||
{
|
||||
tree data, size;
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue