xref: /minix3/external/bsd/llvm/dist/clang/test/Preprocessor/pragma_unknown.c (revision f4a2713ac843a11c696ec80c0a5e3e5d80b4d338)
1*f4a2713aSLionel Sambuc // RUN: %clang_cc1 -fsyntax-only -Wunknown-pragmas -verify %s
2*f4a2713aSLionel Sambuc // RUN: %clang_cc1 -E %s | FileCheck --strict-whitespace %s
3*f4a2713aSLionel Sambuc 
4*f4a2713aSLionel Sambuc // GCC doesn't expand macro args for unrecognized pragmas.
5*f4a2713aSLionel Sambuc #define bar xX
6*f4a2713aSLionel Sambuc #pragma foo bar   // expected-warning {{unknown pragma ignored}}
7*f4a2713aSLionel Sambuc // CHECK: {{^}}#pragma foo bar{{$}}
8*f4a2713aSLionel Sambuc 
9*f4a2713aSLionel Sambuc #pragma STDC FP_CONTRACT ON
10*f4a2713aSLionel Sambuc #pragma STDC FP_CONTRACT OFF
11*f4a2713aSLionel Sambuc #pragma STDC FP_CONTRACT DEFAULT
12*f4a2713aSLionel Sambuc #pragma STDC FP_CONTRACT IN_BETWEEN  // expected-warning {{expected 'ON' or 'OFF' or 'DEFAULT' in pragma}}
13*f4a2713aSLionel Sambuc 
14*f4a2713aSLionel Sambuc #pragma STDC FENV_ACCESS ON          // expected-warning {{pragma STDC FENV_ACCESS ON is not supported, ignoring pragma}}
15*f4a2713aSLionel Sambuc #pragma STDC FENV_ACCESS OFF
16*f4a2713aSLionel Sambuc #pragma STDC FENV_ACCESS DEFAULT
17*f4a2713aSLionel Sambuc #pragma STDC FENV_ACCESS IN_BETWEEN   // expected-warning {{expected 'ON' or 'OFF' or 'DEFAULT' in pragma}}
18*f4a2713aSLionel Sambuc 
19*f4a2713aSLionel Sambuc #pragma STDC CX_LIMITED_RANGE ON
20*f4a2713aSLionel Sambuc #pragma STDC CX_LIMITED_RANGE OFF
21*f4a2713aSLionel Sambuc #pragma STDC CX_LIMITED_RANGE DEFAULT
22*f4a2713aSLionel Sambuc #pragma STDC CX_LIMITED_RANGE IN_BETWEEN   // expected-warning {{expected 'ON' or 'OFF' or 'DEFAULT' in pragma}}
23*f4a2713aSLionel Sambuc 
24*f4a2713aSLionel Sambuc #pragma STDC CX_LIMITED_RANGE    // expected-warning {{expected 'ON' or 'OFF' or 'DEFAULT' in pragma}}
25*f4a2713aSLionel Sambuc #pragma STDC CX_LIMITED_RANGE ON FULL POWER  // expected-warning {{expected end of directive in pragma}}
26*f4a2713aSLionel Sambuc 
27*f4a2713aSLionel Sambuc #pragma STDC SO_GREAT  // expected-warning {{unknown pragma in STDC namespace}}
28*f4a2713aSLionel Sambuc #pragma STDC   // expected-warning {{unknown pragma in STDC namespace}}
29*f4a2713aSLionel Sambuc 
30