blob: 3c2196b2b3bbc29f211e33a09043027e7dd9dabd [file] [log] [blame]
Daniel Dunbarfcdd8fe2008-10-04 19:21:03 +00001// RUN: clang -fsyntax-only -verify %s
Daniel Dunbarfcdd8fe2008-10-04 19:21:03 +00002
Chris Lattner4f2670d2008-10-04 19:38:15 +00003// Note that this puts the expected lines before the directives to work around
4// limitations in the -verify mode.
5
6/* expected-warning {{missing '(' after '#pragma pack'}}*/ #pragma pack 10
Daniel Dunbarfcdd8fe2008-10-04 19:21:03 +00007#pragma pack()
8#pragma pack(8)
9
Chris Lattner4f2670d2008-10-04 19:38:15 +000010/*expected-warning {{unknown action for '#pragma pack'}}*/ #pragma pack(hello)
Daniel Dunbarfcdd8fe2008-10-04 19:21:03 +000011#pragma pack(push)
12#pragma pack(pop)
13
Chris Lattner4f2670d2008-10-04 19:38:15 +000014/* expected-warning {{malformed '#pragma pack', expected '#pragma pack(push}}*/ #pragma pack(push,)
15/* expected-warning {{malformed '#pragma pack', expected '#pragma pack(push}}*/ #pragma pack(push,)
16/* expected-warning {{malformed '#pragma pack', expected '#pragma pack(pop}}*/ #pragma pack(pop,)
Daniel Dunbarfcdd8fe2008-10-04 19:21:03 +000017
18#pragma pack(push,i)
Chris Lattner4f2670d2008-10-04 19:38:15 +000019/* expected-warning {{malformed '#pragma pack', expected}}*/ #pragma pack(push,i,
20/* expected-warning {{malformed '#pragma pack', expected}}*/ #pragma pack(push,i,)
Daniel Dunbarf7a726b2008-10-04 19:45:56 +000021/* expected-warning {{malformed '#pragma pack', expected}}*/ #pragma pack(push,i,help)
Daniel Dunbarfcdd8fe2008-10-04 19:21:03 +000022
23#pragma pack(push,8)
Daniel Dunbarf7a726b2008-10-04 19:45:56 +000024/* expected-warning {{missing ')' after '#pragma pack'}}*/ #pragma pack(push,8,
Chris Lattner4f2670d2008-10-04 19:38:15 +000025/* expected-warning {{missing ')' after '#pragma pack'}}*/ #pragma pack(push,8,)
26/* expected-warning {{missing ')' after '#pragma pack'}}*/ #pragma pack(push,i,8
Daniel Dunbarfcdd8fe2008-10-04 19:21:03 +000027#pragma pack(push,i,8)
28
Chris Lattner4f2670d2008-10-04 19:38:15 +000029/* expected-warning {{missing ')' after '#pragma pack'}}*/ #pragma pack(push
Daniel Dunbarfcdd8fe2008-10-04 19:21:03 +000030
31_Pragma("pack(push)")
Chris Lattner4f2670d2008-10-04 19:38:15 +000032/* expected-warning {{malformed '#pragma pack', expected '#pragma pack(push}}*/ _Pragma("pack(push,)")