llvm-project/clang/test/SemaOpenACC/data-construct-finalize-clause.c
erichkeane fbb14dd977 [OpenACC] Implement 'use_device' clause AST/Sema
This is a clause that is only valid on 'host_data' constructs, and
identifies variables which it should use the current device address.
From a Sema perspective, the only thing novel here is mild changes to
how ActOnVar works for this clause, else this is very much like the rest
of the 'var-list' clauses.
2024-12-16 09:35:57 -08:00

20 lines
587 B
C

// RUN: %clang_cc1 %s -fopenacc -verify
void Test() {
int I;
// expected-error@+1{{OpenACC 'finalize' clause is not valid on 'data' directive}}
#pragma acc data copyin(I) finalize
;
// expected-error@+1{{OpenACC 'finalize' clause is not valid on 'enter data' directive}}
#pragma acc enter data copyin(I) finalize
;
// finalize is valid only on exit data, otherwise has no other rules.
#pragma acc exit data copyout(I) finalize
;
// expected-error@+1{{OpenACC 'finalize' clause is not valid on 'host_data' directive}}
#pragma acc host_data use_device(I) finalize
;
}