// RUN: %clang_cc1 %s -verify -fopenacc void func() { int i, j; // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait // expected-error@+2{{invalid OpenACC clause 'clause'}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait clause-list // expected-error@+3{{expected ')'}} // expected-note@+2{{to match this '('}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait ( // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait () // expected-error@+2{{invalid OpenACC clause 'clause'}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait () clause-list // expected-error@+4{{expected expression}} // expected-error@+3{{expected ')'}} // expected-note@+2{{to match this '('}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (devnum: // expected-error@+2{{expected expression}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (devnum:) // expected-error@+3{{expected expression}} // expected-error@+2{{invalid OpenACC clause 'clause'}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (devnum:) clause-list // expected-error@+4{{expected ':'}} // expected-error@+3{{expected ')'}} // expected-note@+2{{to match this '('}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (devnum: i + j // expected-error@+2{{expected ':'}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (devnum: i + j) // expected-error@+3{{expected ':'}} // expected-error@+2{{invalid OpenACC clause 'clause'}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (devnum: i + j) clause-list // expected-error@+3{{expected ')'}} // expected-note@+2{{to match this '('}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (queues: // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (queues:) // expected-error@+2{{invalid OpenACC clause 'clause'}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (queues:) clause-list // expected-error@+3{{expected ')'}} // expected-note@+2{{to match this '('}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (devnum: i + j:queues: // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (devnum: i + j:queues:) // expected-error@+2{{invalid OpenACC clause 'clause'}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (devnum: i + j:queues:) clause-list // expected-error@+4{{use of undeclared identifier 'devnum'}} // expected-error@+3{{expected ')'}} // expected-note@+2{{to match this '('}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (queues:devnum: i + j // expected-error@+2{{use of undeclared identifier 'devnum'}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (queues:devnum: i + j) // expected-error@+3{{use of undeclared identifier 'devnum'}} // expected-error@+2{{invalid OpenACC clause 'clause'}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait (queues:devnum: i + j) clause-list // expected-error@+3{{expected ')'}} // expected-note@+2{{to match this '('}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(i, j, 1+1, 3.3 // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(i, j, 1+1, 3.3) // expected-error@+2{{invalid OpenACC clause 'clause'}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(i, j, 1+1, 3.3) clause-list // expected-error@+4{{expected expression}} // expected-error@+3{{expected ')'}} // expected-note@+2{{to match this '('}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(, // expected-error@+2{{expected expression}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(,) // expected-error@+3{{expected expression}} // expected-error@+2{{invalid OpenACC clause 'clause'}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(,) clause-list // expected-error@+3{{expected ')'}} // expected-note@+2{{to match this '('}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(queues:i, j, 1+1, 3.3 // expected-error@+4{{expected expression}} // expected-error@+3{{expected ')'}} // expected-note@+2{{to match this '('}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(queues:i, j, 1+1, 3.3, // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(queues:i, j, 1+1, 3.3) // expected-error@+2{{invalid OpenACC clause 'clause'}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(queues:i, j, 1+1, 3.3) clause-list // expected-error@+3{{expected ')'}} // expected-note@+2{{to match this '('}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(devnum:3:i, j, 1+1, 3.3 // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(devnum:3:i, j, 1+1, 3.3) // expected-error@+2{{invalid OpenACC clause 'clause'}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(devnum:3:i, j, 1+1, 3.3) clause-list // expected-error@+3{{expected ')'}} // expected-note@+2{{to match this '('}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(devnum:3:queues:i, j, 1+1, 3.3 // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(devnum:3:queues:i, j, 1+1, 3.3) // expected-error@+2{{invalid OpenACC clause 'clause'}} // expected-warning@+1{{OpenACC directives not yet implemented, pragma ignored}} #pragma acc wait(devnum:3:queues:i, j, 1+1, 3.3) clause-list }