https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106982

            Bug ID: 106982
           Summary: [OpenACC] ICE incorrect sharing of tree nodes with
                    nested reduction / .GOACC_REDUCTION
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code, openacc
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: burnus at gcc dot gnu.org
                CC: tschwinge at gcc dot gnu.org
  Target Milestone: ---

ICE with gcc/g++ -fopenacc:

share10.i:6:9: error: incorrect sharing of tree nodes
    6 | #pragma acc loop worker reduction(*:reduced)
      |         ^~~
MEM <double[5]> [(double *)&reduced]
MEM <double[5]> [(double *)&reduced] = .GOACC_REDUCTION (SETUP, 0, MEM
<double[5]> [(double *)&reduced], -1, 73, 0);
share10.i:6:9: error: incorrect sharing of tree nodes

----------- Failing code is -------------
int test1(double *c)
{
    double reduced[5];
#pragma acc parallel loop gang private(reduced)
    for (int x = 0; x < 5; ++x)
#pragma acc loop worker reduction(*:reduced)
      for (int y = 0; y < 5; ++y) { }
}

Reply via email to