1// RUN: %clang_cc1 -verify -fopenmp -ferror-limit 100 -o - %s 2 3void foo(); 4 5int main(int argc, char **argv) { 6 #pragma omp target parallel proc_bind // expected-error {{expected '(' after 'proc_bind'}} 7 foo(); 8 #pragma omp target parallel proc_bind ( // expected-error {{expected 'master', 'close' or 'spread' in OpenMP clause 'proc_bind'}} expected-error {{expected ')'}} expected-note {{to match this '('}} 9 foo(); 10 #pragma omp target parallel proc_bind () // expected-error {{expected 'master', 'close' or 'spread' in OpenMP clause 'proc_bind'}} 11 foo(); 12 #pragma omp target parallel proc_bind (master // expected-error {{expected ')'}} expected-note {{to match this '('}} 13 foo(); 14 #pragma omp target parallel proc_bind (close), proc_bind(spread) // expected-error {{directive '#pragma omp target parallel' cannot contain more than one 'proc_bind' clause}} 15 foo(); 16 #pragma omp target parallel proc_bind (x) // expected-error {{expected 'master', 'close' or 'spread' in OpenMP clause 'proc_bind'}} 17 foo(); 18 19 #pragma omp target parallel proc_bind(master) 20 ++argc; 21 22 #pragma omp target parallel proc_bind(close) 23 foo(); 24 #pragma omp target parallel proc_bind(spread) 25 ++argc; 26 return 0; 27} 28