xref: /llvm-project/clang/test/SemaOpenACC/compute-construct-device_type-clause.cpp (revision 8ef2011b2cd3a8fc2ef8d6ea0facb1a39a0dd621)
1 // RUN: %clang_cc1 %s -fopenacc -verify
2 
3 template<typename T>
TemplUses()4 void TemplUses() {
5 #pragma acc parallel device_type(I)
6   while(true);
7 #pragma acc parallel dtype(*)
8   while(true);
9 #pragma acc parallel device_type(class)
10   while(true);
11 #pragma acc parallel device_type(private)
12   while(true);
13 #pragma acc parallel device_type(bool)
14   while(true);
15 #pragma acc kernels dtype(true) device_type(false)
16   while(true);
17   // expected-error@+2{{expected ','}}
18   // expected-error@+1{{expected identifier}}
19 #pragma acc parallel device_type(T::value)
20   while(true);
21 }
22 
Inst()23 void Inst() {
24   TemplUses<int>(); // #INST
25 }
26