brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.2 KiB · 10b7478 Raw
95 lines · cpp
1// RUN: %clang_cc1 -verify -fopenmp -ferror-limit 100 %s -Wuninitialized2 3// RUN: %clang_cc1 -verify -fopenmp-simd -ferror-limit 100 %s -Wuninitialized4 5void foo() {6}7 8bool foobool(int argc) {9  return argc;10}11 12struct S1; // expected-note {{declared here}}13 14template <class T, class S> // expected-note {{declared here}}15int tmain(T argc, S **argv) {16  T z;17#pragma omp parallel master taskloop simd final // expected-error {{expected '(' after 'final'}}18  for (int i = 0; i < 10; ++i)19    foo();20#pragma omp parallel master taskloop simd final( // expected-error {{expected expression}} expected-error {{expected ')'}} expected-note {{to match this '('}}21  for (int i = 0; i < 10; ++i)22    foo();23#pragma omp parallel master taskloop simd final() // expected-error {{expected expression}}24  for (int i = 0; i < 10; ++i)25    foo();26#pragma omp parallel master taskloop simd final(argc // expected-error {{expected ')'}} expected-note {{to match this '('}}27  for (int i = 0; i < 10; ++i)28    foo();29#pragma omp parallel master taskloop simd final(argc)) // expected-warning {{extra tokens at the end of '#pragma omp parallel master taskloop simd' are ignored}}30  for (int i = 0; i < 10; ++i)31    foo();32#pragma omp parallel master taskloop simd final(argc > 0 ? argv[1] : argv[2] + z)33  for (int i = 0; i < 10; ++i)34    foo();35#pragma omp parallel master taskloop simd final(foobool(argc)), final(true) // expected-error {{directive '#pragma omp parallel master taskloop simd' cannot contain more than one 'final' clause}}36  for (int i = 0; i < 10; ++i)37    foo();38#pragma omp parallel master taskloop simd final(S) // expected-error {{'S' does not refer to a value}}39  for (int i = 0; i < 10; ++i)40    foo();41#pragma omp parallel master taskloop simd final(argv[1] = 2) // expected-error {{expected ')'}} expected-note {{to match this '('}}42  for (int i = 0; i < 10; ++i)43    foo();44#pragma omp parallel master taskloop simd final(argc argc) // expected-error {{expected ')'}} expected-note {{to match this '('}}45  for (int i = 0; i < 10; ++i)46    foo();47#pragma omp parallel master taskloop simd final(argc)48  for (int i = 0; i < 10; ++i)49    foo();50 51  return 0;52}53 54int main(int argc, char **argv) {55  int z;56#pragma omp parallel master taskloop simd final // expected-error {{expected '(' after 'final'}}57  for (int i = 0; i < 10; ++i)58    foo();59#pragma omp parallel master taskloop simd final( // expected-error {{expected expression}} expected-error {{expected ')'}} expected-note {{to match this '('}}60  for (int i = 0; i < 10; ++i)61    foo();62#pragma omp parallel master taskloop simd final() // expected-error {{expected expression}}63  for (int i = 0; i < 10; ++i)64    foo();65#pragma omp parallel master taskloop simd final(argc // expected-error {{expected ')'}} expected-note {{to match this '('}}66  for (int i = 0; i < 10; ++i)67    foo();68#pragma omp parallel master taskloop simd final(argc)) // expected-warning {{extra tokens at the end of '#pragma omp parallel master taskloop simd' are ignored}}69  for (int i = 0; i < 10; ++i)70    foo();71#pragma omp parallel master taskloop simd final(argc > 0 ? argv[1] : argv[2] - z)72  for (int i = 0; i < 10; ++i)73    foo();74#pragma omp parallel master taskloop simd final(foobool(argc)), final(true) // expected-error {{directive '#pragma omp parallel master taskloop simd' cannot contain more than one 'final' clause}}75  for (int i = 0; i < 10; ++i)76    foo();77#pragma omp parallel master taskloop simd final(S1) // expected-error {{'S1' does not refer to a value}}78  for (int i = 0; i < 10; ++i)79    foo();80#pragma omp parallel master taskloop simd final(argv[1] = 2) // expected-error {{expected ')'}} expected-note {{to match this '('}}81  for (int i = 0; i < 10; ++i)82    foo();83#pragma omp parallel master taskloop simd final(argc argc) // expected-error {{expected ')'}} expected-note {{to match this '('}}84  for (int i = 0; i < 10; ++i)85    foo();86#pragma omp parallel master taskloop simd final(1 0) // expected-error {{expected ')'}} expected-note {{to match this '('}}87  for (int i = 0; i < 10; ++i)88    foo();89#pragma omp parallel master taskloop simd final(if (tmain(argc, argv) // expected-error {{expected expression}} expected-error {{expected ')'}} expected-note {{to match this '('}}90  for (int i = 0; i < 10; ++i)91    foo();92 93  return tmain(argc, argv);94}95