1*4887Schin /* 2*4887Schin * 3*4887Schin * Glenn Fowler 4*4887Schin * AT&T Research 5*4887Schin * 6*4887Schin * @(#)pp.tab (AT&T Labs Research) 2006-05-09 7*4887Schin * 8*4887Schin * C preprocessor tables and states 9*4887Schin * 10*4887Schin * + marks extensions to the standard 11*4887Schin * 12*4887Schin */ 13*4887Schin 14*4887Schin #define DEFINE 1 15*4887Schin #define ELIF 2 16*4887Schin #define ELSE 3 17*4887Schin #define ENDIF 4 18*4887Schin #define ENDMAC 5 19*4887Schin #define ERROR 6 20*4887Schin #define IF 7 21*4887Schin #define IFDEF 8 22*4887Schin #define IFNDEF 9 23*4887Schin #define INCLUDE 10 24*4887Schin #define LET 11 25*4887Schin #define LINE 12 26*4887Schin #define MACDEF 13 27*4887Schin #define PRAGMA 14 28*4887Schin #define RENAME 15 29*4887Schin #define UNDEF 16 30*4887Schin #define WARNING 17 31*4887Schin 32*4887Schin #define X_ALLMULTIPLE 1 33*4887Schin #define X_ALLPOSSIBLE 2 34*4887Schin #define X_BUILTIN 3 35*4887Schin #define X_CATLITERAL 4 36*4887Schin #define X_CDIR 5 37*4887Schin #define X_CHECKPOINT 6 38*4887Schin #define X_CHOP 7 39*4887Schin #define X_COMPATIBILITY 8 40*4887Schin #define X_DEBUG 9 41*4887Schin #define X_ELSEIF 10 42*4887Schin #define X_EXTERNALIZE 11 43*4887Schin #define X_FINAL 12 44*4887Schin #define X_HIDE 13 45*4887Schin #define X_HEADEREXPAND 14 46*4887Schin #define X_HEADEREXPANDALL 15 47*4887Schin #define X_HOSTED 16 48*4887Schin #define X_HOSTEDTRANSITION 17 49*4887Schin #define X_HOSTDIR 18 50*4887Schin #define X_ID 19 51*4887Schin #define X_IGNORE 20 52*4887Schin #define X_INCLUDE 21 53*4887Schin #define X_INITIAL 22 54*4887Schin #define X_KEYARGS 23 55*4887Schin #define X_LINE 24 56*4887Schin #define X_LINEBASE 25 57*4887Schin #define X_LINEFILE 26 58*4887Schin #define X_LINEID 27 59*4887Schin #define X_LINETYPE 28 60*4887Schin #define X_MACREF 29 61*4887Schin #define X_MAP 30 62*4887Schin #define X_MAPINCLUDE 31 63*4887Schin #define X_MODERN 32 64*4887Schin #define X_MULTIPLE 33 65*4887Schin #define X_NATIVE 34 66*4887Schin #define X_NOTE 35 67*4887Schin #define X_OPSPACE 36 68*4887Schin #define X_PASSTHROUGH 37 69*4887Schin #define X_PEDANTIC 38 70*4887Schin #define X_PLUSCOMMENT 39 71*4887Schin #define X_PLUSPLUS 40 72*4887Schin #define X_PLUSSPLICE 41 73*4887Schin #define X_PRAGMAFLAGS 42 74*4887Schin #define X_PRAGMAEXPAND 43 75*4887Schin #define X_PREDEFINED 44 76*4887Schin #define X_PREFIX 45 77*4887Schin #define X_PRESERVE 46 78*4887Schin #define X_PROTO 47 79*4887Schin #define X_PROTOTYPED 48 80*4887Schin #define X_QUOTE 49 81*4887Schin #define X_READONLY 50 82*4887Schin #define X_REGUARD 51 83*4887Schin #define X_RESERVED 52 84*4887Schin #define X_SPACEOUT 53 85*4887Schin #define X_SPLICECAT 54 86*4887Schin #define X_SPLICESPACE 55 87*4887Schin #define X_STANDARD 56 88*4887Schin #define X_STATEMENT 57 89*4887Schin #define X_STRICT 58 90*4887Schin #define X_STRINGSPAN 59 91*4887Schin #define X_STRINGSPLIT 60 92*4887Schin #define X_SYSTEM_HEADER 61 93*4887Schin #define X_TEST 62 94*4887Schin #define X_TEXT 63 95*4887Schin #define X_TRANSITION 64 96*4887Schin #define X_TRUNCATE 65 97*4887Schin #define X_VENDOR 66 98*4887Schin #define X_VERSION 67 99*4887Schin #define X_WARN 68 100*4887Schin #define X_ZEOF 69 101*4887Schin #define X_last_option 69 102*4887Schin 103*4887Schin #define X_DEFINED 70 104*4887Schin #define X_EXISTS 71 105*4887Schin #define X_INCLUDED 72 106*4887Schin #define X_MATCH 73 107*4887Schin #define X_NOTICED 74 108*4887Schin #define X_OPTION 75 109*4887Schin #define X_SIZEOF 76 110*4887Schin #define X_STRCMP 77 111*4887Schin 112*4887Schin #define R_DEFINED 1 113*4887Schin 114*4887Schin #define ADD (1<<0) 115*4887Schin #define COLLECTING (1<<1) 116*4887Schin #define COMPATIBILITY (1<<2) 117*4887Schin #define COMPILE (1<<3) 118*4887Schin #define CONDITIONAL (1<<4) 119*4887Schin #define DEFINITION (1<<5) 120*4887Schin #define DIRECTIVE (1<<6) 121*4887Schin #define DISABLE (1<<7) 122*4887Schin #define EOF2NL (1<<8) 123*4887Schin #define ESCAPE (1<<9) 124*4887Schin #define FILEPOP (1<<10) 125*4887Schin #define HEADER (1<<11) 126*4887Schin #define HIDDEN (1<<12) 127*4887Schin #define JOINING (1<<13) 128*4887Schin #define NEWLINE (1<<14) 129*4887Schin #define NOEXPAND (1L<<15) 130*4887Schin #define NOSPACE (1L<<16) 131*4887Schin #define NOTEXT (1L<<17) 132*4887Schin #define NOVERTICAL (1L<<18) 133*4887Schin #define PASSEOF (1L<<19) 134*4887Schin #define PASSTHROUGH (1L<<20) 135*4887Schin #define QUOTE (1L<<21) 136*4887Schin #define SKIPCONTROL (1L<<22) 137*4887Schin #define SKIPMACRO (1L<<23) 138*4887Schin #define SPACEOUT (1L<<24) 139*4887Schin #define SQUOTE (1L<<25) 140*4887Schin #define STANDALONE (1L<<26) 141*4887Schin #define STRICT (1L<<27) 142*4887Schin #define STRIP (1L<<28) 143*4887Schin #define SYNCLINE (1L<<29) 144*4887Schin #define TRANSITION (1L<<30) 145*4887Schin #define WARN (1L<<31) 146*4887Schin 147*4887Schin #define ALLMULTIPLE (1<<0) 148*4887Schin #define BUILTIN (1<<1) 149*4887Schin #define CATLITERAL (1<<2) 150*4887Schin #define DUMP (1<<3) 151*4887Schin #define EXPOSE (1<<4) 152*4887Schin #define EXTERNALIZE (1<<5) 153*4887Schin #define FILEDEPS (1<<6) 154*4887Schin #define GENDEPS (1<<7) 155*4887Schin #define HEADERDEPS (1<<8) 156*4887Schin #define HOSTED (1<<9) 157*4887Schin #define HOSTEDTRANSITION (1<<10) 158*4887Schin #define INACTIVE (1<<11) 159*4887Schin #define INIT (1<<12) 160*4887Schin #define LOADING (1<<13) 161*4887Schin #define MARKC (1<<14) 162*4887Schin #define MARKHOSTED (1L<<15) 163*4887Schin #define MARKMACRO (1L<<16) 164*4887Schin #define PEDANTIC (1L<<17) 165*4887Schin #define READONLY (1L<<18) 166*4887Schin #define RELAX (1L<<19) 167*4887Schin 168*4887Schin #define ALLPOSSIBLE (1<<0) 169*4887Schin #define DEFINITIONS (1<<1) 170*4887Schin #define ELSEIF (1<<2) 171*4887Schin #define FINAL (1<<3) 172*4887Schin #define HEADEREXPAND (1<<4) 173*4887Schin #define HEADEREXPANDALL (1<<5) 174*4887Schin #define IGNORELINE (1<<6) 175*4887Schin #define INITIAL (1<<7) 176*4887Schin #define KEEPNOTEXT (1<<8) 177*4887Schin #define KEYARGS (1<<9) 178*4887Schin #define MODERN (1<<10) 179*4887Schin #define NATIVE (1<<11) 180*4887Schin #define NOHASH (1<<12) 181*4887Schin #define NOISE (1<<13) 182*4887Schin #define NOISEFILTER (1<<14) 183*4887Schin #define NOPROTO (1L<<15) 184*4887Schin #define PLUSCOMMENT (1L<<16) 185*4887Schin #define PLUSPLUS (1L<<17) 186*4887Schin #define PLUSSPLICE (1L<<18) 187*4887Schin #define PRAGMAEXPAND (1L<<19) 188*4887Schin #define PREDEFINED (1L<<20) 189*4887Schin #define PREDEFINITIONS (1L<<21) 190*4887Schin #define PREFIX (1L<<22) 191*4887Schin #define PRESERVE (1L<<23) 192*4887Schin #define PROTOTYPED (1L<<24) 193*4887Schin #define REGUARD (1L<<25) 194*4887Schin #define SPLICECAT (1L<<26) 195*4887Schin #define SPLICESPACE (1L<<27) 196*4887Schin #define STRINGSPAN (1L<<28) 197*4887Schin #define STRINGSPLIT (1L<<29) 198*4887Schin #define TRUNCATE (1L<<30) 199*4887Schin #define ZEOF (1L<<31) 200*4887Schin 201*4887Schin #define V__PRAGMA 78 202*4887Schin #define V_ARGC 79 203*4887Schin #define V_BASE 80 204*4887Schin #define V_DATE 81 205*4887Schin #define V_FILE 82 206*4887Schin #define V_FUNCTION 83 207*4887Schin #define V_LINE 84 208*4887Schin #define V_PATH 85 209*4887Schin #define V_SOURCE 86 210*4887Schin #define V_STDC 87 211*4887Schin #define V_TIME 88 212*4887Schin #define V_VERSION 89 213*4887Schin #define V_DEFAULT 90 214*4887Schin #define V_DIRECTIVE 91 215*4887Schin #define V_EMPTY 92 216*4887Schin #define V_GETENV 93 217*4887Schin #define V_GETMAC 94 218*4887Schin #define V_GETOPT 95 219*4887Schin #define V_GETPRD 96 220*4887Schin #define V_ITERATE 97 221