+
+/* parser.dlg -- DLG Description of scanner
+ *
+ * Generated from: dlg_p.g
+ *
+ * Terence Parr, Will Cohen, and Hank Dietz: 1989-1994
+ * Purdue University Electrical Engineering
+ * With AHPCRC, University of Minnesota
+ * ANTLR Version 1.32
+ */
+
+#include <stdio.h>
+#define ANTLR_VERSION 132
+
+#include <ctype.h>
+#include "dlg.h"
+#ifdef MEMCHK
+#include "trax.h"
+#endif
+#include "antlr.h"
+#include "tokens.h"
+#include "dlgdef.h"
+LOOKAHEAD
+void zzerraction()
+{
+ (*zzerr)("invalid token");
+ zzadvance();
+ zzskip();
+}
+/*
+ * D L G tables
+ *
+ * Generated from: parser.dlg
+ *
+ * 1989-1994 by Will Cohen, Terence Parr, and Hank Dietz
+ * Purdue University Electrical Engineering
+ * DLG Version 1.32
+ */
+
+#include "mode.h"
+
+
+
+
+int func_action; /* should actions be turned into functions?*/
+int lex_mode_counter = 0; /* keeps track of the number of %%names */
+
+static void act1()
+{
+ NLA = 1;
+ }
+
+
+static void act2()
+{
+ NLA = 2;
+ zzskip();
+ }
+
+
+static void act3()
+{
+ NLA = 3;
+ zzline++; zzskip(); DAWDLE;
+ }
+
+
+static void act4()
+{
+ NLA = L_EOF;
+ }
+
+
+static void act5()
+{
+ NLA = PER_PER;
+ }
+
+
+static void act6()
+{
+ NLA = NAME_PER_PER;
+ p_mode_def(&zzlextext[2],lex_mode_counter++);
+ }
+
+
+static void act7()
+{
+ NLA = ACTION;
+ if (func_action)
+ fprintf(OUT,"\n%s %sact%d()\n{ ",
+ gen_cpp?"ANTLRTokenType":"static void",
+ gen_cpp?ClassName("::"):"", ++action_no);
+ zzmode(ACT); zzskip();
+ }
+
+
+static void act8()
+{
+ NLA = GREAT_GREAT;
+ }
+
+
+static void act9()
+{
+ NLA = L_BRACE;
+ }
+
+
+static void act10()
+{
+ NLA = R_BRACE;
+ }
+
+
+static void act11()
+{
+ NLA = L_PAR;
+ }
+
+
+static void act12()
+{
+ NLA = R_PAR;
+ }
+
+
+static void act13()
+{
+ NLA = L_BRACK;
+ }
+
+
+static void act14()
+{
+ NLA = R_BRACK;
+ }
+
+
+static void act15()
+{
+ NLA = ZERO_MORE;
+ }
+
+
+static void act16()
+{
+ NLA = ONE_MORE;
+ }
+
+
+static void act17()
+{
+ NLA = OR;
+ }
+
+
+static void act18()
+{
+ NLA = RANGE;
+ }
+
+
+static void act19()
+{
+ NLA = NOT;
+ }
+
+
+static void act20()
+{
+ NLA = OCTAL_VALUE;
+ {int t; sscanf(&zzlextext[1],"%o",&t); zzlextext[0] = t;}
+ }
+
+
+static void act21()
+{
+ NLA = HEX_VALUE;
+ {int t; sscanf(&zzlextext[3],"%x",&t); zzlextext[0] = t;}
+ }
+
+
+static void act22()
+{
+ NLA = DEC_VALUE;
+ {int t; sscanf(&zzlextext[1],"%d",&t); zzlextext[0] = t;}
+ }
+
+
+static void act23()
+{
+ NLA = TAB;
+ zzlextext[0] = '\t';
+ }
+
+
+static void act24()
+{
+ NLA = NL;
+ zzlextext[0] = '\n';
+ }
+
+
+static void act25()
+{
+ NLA = CR;
+ zzlextext[0] = '\r';
+ }
+
+
+static void act26()
+{
+ NLA = BS;
+ zzlextext[0] = '\b';
+ }
+
+
+static void act27()
+{
+ NLA = LIT;
+ zzlextext[0] = zzlextext[1];
+ }
+
+
+static void act28()
+{
+ NLA = REGCHAR;
+ }
+
+static unsigned char shift0[257] = {
+ 0, 29, 29, 29, 29, 29, 29, 29, 29, 29,
+ 1, 2, 29, 29, 1, 29, 29, 29, 29, 29,
+ 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
+ 29, 29, 29, 1, 29, 29, 29, 29, 4, 29,
+ 29, 19, 20, 23, 24, 29, 26, 29, 29, 12,
+ 13, 13, 13, 13, 13, 13, 13, 14, 14, 29,
+ 29, 15, 29, 16, 29, 3, 7, 7, 7, 7,
+ 7, 7, 11, 11, 11, 11, 11, 11, 11, 11,
+ 11, 11, 11, 11, 11, 11, 11, 11, 11, 5,
+ 11, 11, 21, 28, 22, 29, 11, 29, 7, 6,
+ 7, 7, 7, 7, 11, 11, 11, 11, 11, 11,
+ 11, 9, 11, 11, 11, 10, 11, 8, 11, 11,
+ 11, 5, 11, 11, 17, 25, 18, 27, 29, 29,
+ 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
+ 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
+ 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
+ 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
+ 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
+ 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
+ 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
+ 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
+ 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
+ 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
+ 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
+ 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
+ 29, 29, 29, 29, 29, 29, 29
+};
+
+
+static void act29()
+{
+ NLA = 1;
+ error("unterminated action", zzline); zzmode(START);
+ }
+
+
+static void act30()
+{
+ NLA = ACTION;
+ if (func_action) fprintf(OUT,"}\n\n");
+ zzmode(START);
+ }
+
+
+static void act31()
+{
+ NLA = 29;
+ putc(zzlextext[0], OUT); zzskip();
+ }
+
+
+static void act32()
+{
+ NLA = 30;
+ putc('>', OUT); zzskip();
+ }
+
+
+static void act33()
+{
+ NLA = 31;
+ putc('\\', OUT); zzskip();
+ }
+
+
+static void act34()
+{
+ NLA = 32;
+ putc(zzlextext[0], OUT); ++zzline; zzskip();
+ }
+
+
+static void act35()
+{
+ NLA = 33;
+ fprintf(OUT, "%s", &(zzlextext[0])); zzskip();
+ }
+
+static unsigned char shift1[257] = {
+ 0, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 3, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 1, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 2, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4
+};
+
+#define DfaStates 46
+typedef unsigned char DfaState;
+
+static DfaState st0[31] = {
+ 1, 2, 3, 4, 5, 6, 6, 6, 6, 6,
+ 6, 6, 6, 6, 6, 7, 8, 9, 10, 11,
+ 12, 13, 14, 15, 16, 17, 18, 19, 20, 6,
+ 46
+};
+
+static DfaState st1[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st2[31] = {
+ 46, 21, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st3[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st4[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st5[31] = {
+ 46, 46, 46, 46, 22, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st6[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st7[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 23, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st8[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 24, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st9[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st10[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st11[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st12[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st13[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st14[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st15[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st16[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st17[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st18[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st19[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st20[31] = {
+ 46, 25, 25, 25, 25, 25, 26, 25, 27, 28,
+ 29, 25, 30, 31, 31, 25, 25, 25, 25, 25,
+ 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
+ 46
+};
+
+static DfaState st21[31] = {
+ 46, 21, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st22[31] = {
+ 46, 46, 46, 46, 46, 32, 32, 32, 32, 32,
+ 32, 32, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st23[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st24[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st25[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st26[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st27[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st28[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st29[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st30[31] = {
+ 46, 46, 46, 46, 46, 33, 46, 46, 46, 46,
+ 46, 46, 34, 34, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st31[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 35, 35, 35, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st32[31] = {
+ 46, 46, 46, 46, 46, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 36, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st33[31] = {
+ 46, 46, 46, 46, 46, 46, 37, 37, 46, 46,
+ 46, 46, 37, 37, 37, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st34[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 34, 34, 46, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st35[31] = {
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46, 46, 35, 35, 35, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st36[31] = {
+ 46, 46, 46, 46, 46, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 36, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st37[31] = {
+ 46, 46, 46, 46, 46, 46, 37, 37, 46, 46,
+ 46, 46, 37, 37, 37, 46, 46, 46, 46, 46,
+ 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+ 46
+};
+
+static DfaState st38[6] = {
+ 39, 40, 41, 42, 43, 46
+};
+
+static DfaState st39[6] = {
+ 46, 46, 46, 46, 46, 46
+};
+
+static DfaState st40[6] = {
+ 46, 44, 46, 46, 46, 46
+};
+
+static DfaState st41[6] = {
+ 46, 45, 46, 46, 46, 46
+};
+
+static DfaState st42[6] = {
+ 46, 46, 46, 46, 46, 46
+};
+
+static DfaState st43[6] = {
+ 46, 46, 46, 46, 43, 46
+};
+
+static DfaState st44[6] = {
+ 46, 46, 46, 46, 46, 46
+};
+
+static DfaState st45[6] = {
+ 46, 46, 46, 46, 46, 46
+};
+
+
+DfaState *dfa[46] = {
+ st0,
+ st1,
+ st2,
+ st3,
+ st4,
+ st5,
+ st6,
+ st7,
+ st8,
+ st9,
+ st10,
+ st11,
+ st12,
+ st13,
+ st14,
+ st15,
+ st16,
+ st17,
+ st18,
+ st19,
+ st20,
+ st21,
+ st22,
+ st23,
+ st24,
+ st25,
+ st26,
+ st27,
+ st28,
+ st29,
+ st30,
+ st31,
+ st32,
+ st33,
+ st34,
+ st35,
+ st36,
+ st37,
+ st38,
+ st39,
+ st40,
+ st41,
+ st42,
+ st43,
+ st44,
+ st45
+};
+
+
+DfaState accepts[47] = {
+ 0, 1, 2, 3, 4, 28, 28, 28, 28, 9,
+ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
+ 0, 2, 5, 7, 8, 27, 26, 23, 24, 25,
+ 20, 22, 6, 0, 20, 22, 6, 21, 0, 29,
+ 31, 33, 34, 35, 30, 32, 0
+};
+
+void (*actions[36])() = {
+ zzerraction,
+ act1,
+ act2,
+ act3,
+ act4,
+ act5,
+ act6,
+ act7,
+ act8,
+ act9,
+ act10,
+ act11,
+ act12,
+ act13,
+ act14,
+ act15,
+ act16,
+ act17,
+ act18,
+ act19,
+ act20,
+ act21,
+ act22,
+ act23,
+ act24,
+ act25,
+ act26,
+ act27,
+ act28,
+ act29,
+ act30,
+ act31,
+ act32,
+ act33,
+ act34,
+ act35
+};
+
+static DfaState dfa_base[] = {
+ 0,
+ 38
+};
+
+static unsigned char *b_class_no[] = {
+ shift0,
+ shift1
+};
+
+
+
+#define ZZSHIFT(c) (b_class_no[zzauto][1+c])
+#define MAX_MODE 2
+#include "dlgauto.h"