summaryrefslogtreecommitdiff
path: root/usr/src/lib/libpp/i386/pptab.h
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/lib/libpp/i386/pptab.h')
-rw-r--r--usr/src/lib/libpp/i386/pptab.h152
1 files changed, 152 insertions, 0 deletions
diff --git a/usr/src/lib/libpp/i386/pptab.h b/usr/src/lib/libpp/i386/pptab.h
new file mode 100644
index 0000000000..d153e8e65c
--- /dev/null
+++ b/usr/src/lib/libpp/i386/pptab.h
@@ -0,0 +1,152 @@
+/*
+ *
+ * Glenn Fowler
+ * AT&T Research
+ *
+ * @(#)pp.tab (AT&T Labs Research) 2006-05-09
+ *
+ * C preprocessor tables and states
+ *
+ * + marks extensions to the standard
+ *
+ */
+
+static struct ppkeyword directives[] =
+{
+ "define", DEFINE,
+ "elif", ELIF,
+ "else", ELSE,
+ "endif", ENDIF,
+ "+endmac", ENDMAC,
+ "error", ERROR,
+ "if", IF,
+ "ifdef", IFDEF,
+ "ifndef", IFNDEF,
+ "include", INCLUDE,
+ "+let", LET,
+ "line", LINE,
+ "+macdef", MACDEF,
+ "pragma", PRAGMA,
+ "+rename", RENAME,
+ "undef", UNDEF,
+ "+warning", WARNING,
+ 0, 0
+};
+
+static struct ppkeyword options[] =
+{
+ "allmultiple", X_ALLMULTIPLE,
+ "allpossible", X_ALLPOSSIBLE,
+ "builtin", X_BUILTIN,
+ "catliteral", X_CATLITERAL,
+ "cdir", X_CDIR,
+ "checkpoint", X_CHECKPOINT,
+ "chop", X_CHOP,
+ "compatibility", X_COMPATIBILITY,
+ "debug", X_DEBUG,
+ "elseif", X_ELSEIF,
+ "externalize", X_EXTERNALIZE,
+ "final", X_FINAL,
+ "hide", X_HIDE,
+ "headerexpand", X_HEADEREXPAND,
+ "headerexpandall", X_HEADEREXPANDALL,
+ "hosted", X_HOSTED,
+ "hostedtransition", X_HOSTEDTRANSITION,
+ "hostdir", X_HOSTDIR,
+ "id", X_ID,
+ "ignore", X_IGNORE,
+ "include", X_INCLUDE,
+ "initial", X_INITIAL,
+ "keyargs", X_KEYARGS,
+ "line", X_LINE,
+ "linebase", X_LINEBASE,
+ "linefile", X_LINEFILE,
+ "lineid", X_LINEID,
+ "linetype", X_LINETYPE,
+ "macref", X_MACREF,
+ "map", X_MAP,
+ "mapinclude", X_MAPINCLUDE,
+ "modern", X_MODERN,
+ "multiple", X_MULTIPLE,
+ "native", X_NATIVE,
+ "note", X_NOTE,
+ "opspace", X_OPSPACE,
+ "passthrough", X_PASSTHROUGH,
+ "pedantic", X_PEDANTIC,
+ "pluscomment", X_PLUSCOMMENT,
+ "plusplus", X_PLUSPLUS,
+ "plussplice", X_PLUSSPLICE,
+ "pragmaflags", X_PRAGMAFLAGS,
+ "pragmaexpand", X_PRAGMAEXPAND,
+ "predefined", X_PREDEFINED,
+ "prefix", X_PREFIX,
+ "preserve", X_PRESERVE,
+ "proto", X_PROTO,
+ "prototyped", X_PROTOTYPED,
+ "quote", X_QUOTE,
+ "readonly", X_READONLY,
+ "reguard", X_REGUARD,
+ "reserved", X_RESERVED,
+ "spaceout", X_SPACEOUT,
+ "splicecat", X_SPLICECAT,
+ "splicespace", X_SPLICESPACE,
+ "standard", X_STANDARD,
+ "statement", X_STATEMENT,
+ "strict", X_STRICT,
+ "stringspan", X_STRINGSPAN,
+ "stringsplit", X_STRINGSPLIT,
+ "system_header", X_SYSTEM_HEADER,
+ "test", X_TEST,
+ "text", X_TEXT,
+ "transition", X_TRANSITION,
+ "truncate", X_TRUNCATE,
+ "vendor", X_VENDOR,
+ "version", X_VERSION,
+ "warn", X_WARN,
+ "zeof", X_ZEOF,
+ 0, 0
+};
+
+static struct ppkeyword predicates[] =
+{
+ "defined", X_DEFINED,
+ "+exists", X_EXISTS,
+ "+included", X_INCLUDED,
+ "+match", X_MATCH,
+ "+noticed", X_NOTICED,
+ "+option", X_OPTION,
+ "sizeof", X_SIZEOF,
+ "+strcmp", X_STRCMP,
+ 0, 0
+};
+
+static struct ppkeyword readonlys[] =
+{
+ "defined", R_DEFINED,
+ 0, 0
+};
+
+static struct ppkeyword variables[] =
+{
+ "_Pragma", V__PRAGMA,
+ "+ARGC", V_ARGC,
+ "+BASE", V_BASE,
+ "DATE", V_DATE,
+ "FILE", V_FILE,
+ "+FUNCTION", V_FUNCTION,
+ "LINE", V_LINE,
+ "+PATH", V_PATH,
+ "+SOURCE", V_SOURCE,
+ "-STDC", V_STDC,
+ "TIME", V_TIME,
+ "+VERSION", V_VERSION,
+ "-default", V_DEFAULT,
+ "-directive", V_DIRECTIVE,
+ "-empty", V_EMPTY,
+ "-getenv", V_GETENV,
+ "-getmac", V_GETMAC,
+ "-getopt", V_GETOPT,
+ "-getprd", V_GETPRD,
+ "-iterate", V_ITERATE,
+ 0, 0
+};