Skip to content

copy_copyout/copyin_copyout depend on order of clauses #88

@alisterj1138

Description

@alisterj1138

The tests copy_copyout and copyin_copyout (C and C++) depend on the order of the data clauses, which the spec prohibits.

From v2.7 of the spec:

680 • A program must not depend on the order of evaluation of the clauses, or on any side effects
681 of the evaluations.

From v3.2 of the spec:

1056 • A program must not depend on the order of evaluation of the clauses or on any side effects of
1057 the evaluations.

    for(int x = 0; x < n; ++x){
        test[x] = 1.0;
    }
   #pragma acc parallel loop copy(test[0:n]) copyout(test[0:n])
   for(int x = 0; x < n; ++x){
        test[x] += 1.0;
   }

   for(int x = 0; x < n; ++x){
        if(fabs(test[x] - 2.0) > PRECISION){
            err++;
        }
    }

It's unclear what the best path forward is for these tests.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions