brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 KiB · fd47dd8 Raw
45 lines · c
1// RUN: %clang_cc1 -fsyntax-only -verify %s2 3// Note that this puts the expected lines before the directives to work around4// limitations in the -verify mode.5 6int x;7/* expected-warning {{expected identifier in '#pragma weak'}}*/ #pragma weak8#pragma weak x9 10extern int z;11/* expected-warning {{expected identifier in '#pragma weak'}}*/ #pragma weak z = =12/* expected-warning {{expected identifier in '#pragma weak'}}*/ #pragma weak z =13/* expected-warning {{weak identifier 'y' never declared}} */ #pragma weak z = y14 15extern int a;16/* expected-warning {{extra tokens at end of '#pragma weak'}}*/ #pragma weak a b17/* expected-warning {{extra tokens at end of '#pragma weak'}}*/ #pragma weak a = x c18 19 20void pragma_is_not_a_statement(int x)21{22  int t;23 24  {25    if (x)26#pragma weak t27    else // expected-error {{expected expression}}28#pragma weak t29  }30 31  switch (x) {32    case 1:33#pragma weak t34  } // expected-error {{expected statement}}35  switch(x) {36    default:37#pragma weak t38  } // expected-error {{expected statement}}39 40label:41#pragma weak t42} // expected-error {{expected statement}}43 44 45