improve tests, new ms types test
[cparser] / tokens_preprocessor.inc
1 #ifndef TS
2 #define TS(x,str,val)
3 #endif
4
5 TS(HEADERNAME,              "header name", = 256)
6 TS(IDENTIFIER,              "identifier",)
7 TS(NUMBER,                  "number",)
8 TS(CHARACTER_CONSTANT,      "character constant",)
9 TS(WIDE_CHARACTER_CONSTANT, "character constant",)
10 TS(STRING_LITERAL,          "string literal",)
11 TS(WIDE_STRING_LITERAL,     "wide string literal",)
12 TS(PUNCTUATOR,              "punctuator",)
13 TS(NEWLINE,                 "newline", = '\n')
14
15 #define PUNCTUATOR(name,string,val)   T(_ALL,name,string,val)
16 #include "tokens_punctuator.inc"
17 #undef PUNCTUATOR
18
19 #define S(x)   T(_ALL,x,#x,)
20
21 S(if)
22 S(else)
23 S(elif)
24 S(endif)
25 S(ifdef)
26 S(ifndef)
27 S(include)
28 S(define)
29 S(undef)
30 S(line)
31 S(error)
32 S(pragma)
33
34 S(defined)
35 T(_ALL, va_args, "__VA_ARGS__",)
36
37 S(STDC)
38 S(ON)
39 S(OFF)
40 S(DEFAULT)
41 S(FP_CONTRACT)
42 S(FENV_ACCESS)
43 S(CX_LIMITED_RANGE)
44
45 #undef S