]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/TianoTools/Pccts/antlr/parser.dlg
Restructuring for better separation of Tool packages.
[mirror_edk2.git] / Tools / Source / TianoTools / Pccts / antlr / parser.dlg
diff --git a/Tools/Source/TianoTools/Pccts/antlr/parser.dlg b/Tools/Source/TianoTools/Pccts/antlr/parser.dlg
deleted file mode 100644 (file)
index 8c43dff..0000000
+++ /dev/null
@@ -1,1387 +0,0 @@
-<<\r
-/* parser.dlg -- DLG Description of scanner\r
- *\r
- * Generated from: antlr.g\r
- *\r
- * Terence Parr, Will Cohen, and Hank Dietz: 1989-2001\r
- * Purdue University Electrical Engineering\r
- * With AHPCRC, University of Minnesota\r
- * ANTLR Version 1.33MR33\r
- */\r
-\r
-#define ANTLR_VERSION  13333\r
-#include "pcctscfg.h"\r
-#include "pccts_stdio.h"\r
-\r
-#include "pcctscfg.h"\r
-#include "set.h"\r
-#include <ctype.h>\r
-#include "syn.h"\r
-#include "hash.h"\r
-#include "generic.h"\r
-#define zzcr_attr(attr,tok,t)\r
-#include "antlr.h"\r
-#include "tokens.h"\r
-#include "dlgdef.h"\r
-LOOKAHEAD\r
-\r
-void\r
-#ifdef __USE_PROTOS\r
-zzerraction(void)\r
-#else\r
-zzerraction()\r
-#endif\r
-{\r
-       (*zzerr)("invalid token");\r
-       zzadvance();\r
-       zzskip();\r
-}\r
->>\r
-\r
-<<%%lexaction\r
-\r
-/* maintained, but not used for now */\r
-set AST_nodes_refd_in_actions = set_init;\r
-int inAlt = 0;\r
-set attribsRefdFromAction = set_init; /* MR20 */\r
-int UsedOldStyleAttrib = 0;\r
-int UsedNewStyleLabel = 0;\r
-#ifdef __USE_PROTOS\r
-char *inline_set(char *);\r
-#else\r
-char *inline_set();\r
-#endif\r
-\r
-/* MR1 10-Apr-97  MR1  Previously unable to put right shift operator       */\r
-/* MR1                                 in DLG action                                       */\r
-\r
-int tokenActionActive=0;                                            /* MR1 */\r
-\r
-  \r
->>\r
-\r
-<<%%lexaction\r
-\r
-\r
-static char *\r
-#ifdef __USE_PROTOS\r
-getFileNameFromTheLineInfo(char *toStr, char *fromStr)\r
-#else\r
-getFileNameFromTheLineInfo(toStr, fromStr)\r
-char *toStr, *fromStr;\r
-#endif\r
-{\r
-  int i, j, k;\r
-  \r
-  if (!fromStr || !toStr) return toStr;\r
-  \r
-  /* find the first " */\r
-  \r
-  for (i=0;\r
-  (i<MaxFileName) &&\r
-  (fromStr[i] != '\n') &&\r
-  (fromStr[i] != '\r') &&\r
-  (fromStr[i] != '\"');\r
-  i++) /* nothing */ ;\r
-  \r
-  if ( (i == MaxFileName) ||\r
-  (fromStr[i] == '\n') ||\r
-  (fromStr[i] == '\r') ) {\r
-  return toStr;\r
-}\r
-\r
-  /* find the second " */\r
-\r
-  for (j=i+1;\r
-(j<MaxFileName) &&\r
-(fromStr[j] != '\n') &&\r
-(fromStr[j] != '\r') &&\r
-(fromStr[j] != '\"');\r
-j++) /* nothing */ ;\r
-\r
-  if ((j == MaxFileName) ||\r
-(fromStr[j] == '\n') ||\r
-(fromStr[j] == '\r') ) {\r
-  return toStr;\r
-}\r
-\r
-  /* go back until the last / or \ */\r
-\r
-  for (k=j-1;\r
-(fromStr[k] != '\"') &&\r
-(fromStr[k] != '/') &&\r
-(fromStr[k] != '\\');\r
-k--) /* nothing */ ;\r
-\r
-  /* copy the string after " / or \ into toStr */\r
-\r
-  for (i=k+1; fromStr[i] != '\"'; i++) {\r
-toStr[i-k-1] = fromStr[i];\r
-}\r
-\r
-  toStr[i-k-1] = '\0';\r
-\r
-  return toStr;\r
-}\r
-\r
-/* MR14 end of a block to support #line in antlr source code */\r
-\r
-  \r
->>\r
-\r
-<<%%lexaction\r
-\r
-#ifdef __USE_PROTOS\r
-void mark_label_used_in_sem_pred(LabelEntry *le)              /* MR10 */\r
-#else\r
-void mark_label_used_in_sem_pred(le)                          /* MR10 */\r
-LabelEntry    *le;\r
-#endif\r
-{\r
-  TokNode   *tn;\r
-  require (le->elem->ntype == nToken,"mark_label_used... ntype != nToken");\r
-  tn=(TokNode *)le->elem;\r
-  require (tn->label != 0,"mark_label_used... TokNode has no label");\r
-  tn->label_used_in_semantic_pred=1;\r
-}\r
->>\r
-\r
-\r
-%%START\r
-\r
-@\r
-       <<\r
-               NLA = Eof;\r
-    /* L o o k  F o r  A n o t h e r  F i l e */\r
-    {\r
-      FILE *new_input;\r
-      new_input = NextFile();\r
-      if ( new_input == NULL ) { NLA=Eof; return; }\r
-      fclose( input );\r
-      input = new_input;\r
-      zzrdstream( input );\r
-      zzskip();        /* Skip the Eof (@) char i.e continue */\r
-    }\r
-       >>\r
-\r
-[\t\ ]+\r
-       <<\r
-               NLA = 76;\r
-    zzskip();   \r
-       >>\r
-\r
-\n|\r|\r\n\r
-       <<\r
-               NLA = 77;\r
-    zzline++; zzskip();   \r
-       >>\r
-\r
-\[\r
-       <<\r
-               NLA = 78;\r
-    zzmode(ACTIONS); zzmore();\r
-    istackreset();\r
-    pushint(']');   \r
-       >>\r
-\r
-\<\<\r
-       <<\r
-               NLA = 79;\r
-    action_file=CurFile; action_line=zzline;\r
-    zzmode(ACTIONS); zzmore();\r
-    list_free(&CurActionLabels,0);       /* MR10 */\r
-    numericActionLabel=0;                /* MR10 */\r
-    istackreset();\r
-    pushint('>');   \r
-       >>\r
-\r
-\"\r
-       <<\r
-               NLA = 80;\r
-    zzmode(STRINGS); zzmore();   \r
-       >>\r
-\r
-/\*\r
-       <<\r
-               NLA = 81;\r
-    zzmode(COMMENTS); zzskip();   \r
-       >>\r
-\r
-\*/\r
-       <<\r
-               NLA = 82;\r
-    warn("Missing /*; found dangling */"); zzskip();   \r
-       >>\r
-\r
-//\r
-       <<\r
-               NLA = 83;\r
-    zzmode(CPP_COMMENTS); zzskip();   \r
-       >>\r
-\r
-#line[\ \t]* [0-9]+ {[\ \t]* \"~[\"]+\" ([\ \t]* [0-9]*)* } (\n|\r|\r\n)\r
-       <<\r
-               NLA = 84;\r
-    \r
-    zzline = atoi(zzbegexpr+5) - 1; zzline++; zzmore();\r
-    getFileNameFromTheLineInfo(FileStr[CurFile], zzbegexpr);\r
-       >>\r
-\r
-#line ~[\n\r]* (\n|\r|\r\n)\r
-       <<\r
-               NLA = 85;\r
-    \r
-    zzline++; zzmore();\r
-       >>\r
-\r
-\>\>\r
-       <<\r
-               NLA = 86;\r
-    warn("Missing <<; found dangling \>\>"); zzskip();   \r
-       >>\r
-\r
-.\r
-       <<\r
-               NLA = WildCard;\r
-       >>\r
-\r
-\@\r
-       <<\r
-               NLA = 88;\r
-    FoundException = 1;                /* MR6 */\r
-    FoundAtOperator = 1;  \r
-       >>\r
-\r
-{\\}#pragma\r
-       <<\r
-               NLA = Pragma;\r
-       >>\r
-\r
-{\\}#FirstSetSymbol\r
-       <<\r
-               NLA = FirstSetSymbol;\r
-       >>\r
-\r
-{\\}#header\r
-       <<\r
-               NLA = 94;\r
-       >>\r
-\r
-{\\}#first\r
-       <<\r
-               NLA = 95;\r
-       >>\r
-\r
-{\\}#parser\r
-       <<\r
-               NLA = 96;\r
-       >>\r
-\r
-{\\}#tokdefs\r
-       <<\r
-               NLA = 97;\r
-       >>\r
-\r
-\}\r
-       <<\r
-               NLA = 98;\r
-       >>\r
-\r
-class\r
-       <<\r
-               NLA = 99;\r
-       >>\r
-\r
-\{\r
-       <<\r
-               NLA = 102;\r
-       >>\r
-\r
-!\r
-       <<\r
-               NLA = 103;\r
-       >>\r
-\r
-\<\r
-       <<\r
-               NLA = 104;\r
-       >>\r
-\r
-\>\r
-       <<\r
-               NLA = 105;\r
-       >>\r
-\r
-:\r
-       <<\r
-               NLA = 106;\r
-       >>\r
-\r
-;\r
-       <<\r
-               NLA = 107;\r
-       >>\r
-\r
-{\\}#lexaction\r
-       <<\r
-               NLA = 108;\r
-       >>\r
-\r
-{\\}#lexmember\r
-       <<\r
-               NLA = 109;\r
-       >>\r
-\r
-{\\}#lexprefix\r
-       <<\r
-               NLA = 110;\r
-       >>\r
-\r
-{\\}#pred\r
-       <<\r
-               NLA = 111;\r
-       >>\r
-\r
-\|\|\r
-       <<\r
-               NLA = 112;\r
-       >>\r
-\r
-&&\r
-       <<\r
-               NLA = 113;\r
-       >>\r
-\r
-\(\r
-       <<\r
-               NLA = 114;\r
-       >>\r
-\r
-\)\r
-       <<\r
-               NLA = 115;\r
-       >>\r
-\r
-{\\}#lexclass\r
-       <<\r
-               NLA = 116;\r
-       >>\r
-\r
-{\\}#errclass\r
-       <<\r
-               NLA = 117;\r
-       >>\r
-\r
-{\\}#tokclass\r
-       <<\r
-               NLA = 118;\r
-       >>\r
-\r
-..\r
-       <<\r
-               NLA = 119;\r
-       >>\r
-\r
-{\\}#token\r
-       <<\r
-               NLA = 120;\r
-       >>\r
-\r
-=\r
-       <<\r
-               NLA = 121;\r
-       >>\r
-\r
-[0-9]+\r
-       <<\r
-               NLA = 122;\r
-       >>\r
-\r
-\|\r
-       <<\r
-               NLA = 123;\r
-       >>\r
-\r
-\~\r
-       <<\r
-               NLA = 124;\r
-       >>\r
-\r
-^\r
-       <<\r
-               NLA = 125;\r
-       >>\r
-\r
-approx\r
-       <<\r
-               NLA = 126;\r
-       >>\r
-\r
-LL\(1\)\r
-       <<\r
-               NLA = 127;\r
-       >>\r
-\r
-LL\(2\)\r
-       <<\r
-               NLA = 128;\r
-       >>\r
-\r
-\*\r
-       <<\r
-               NLA = 129;\r
-       >>\r
-\r
-\+\r
-       <<\r
-               NLA = 130;\r
-       >>\r
-\r
-?\r
-       <<\r
-               NLA = 131;\r
-       >>\r
-\r
-=>\r
-       <<\r
-               NLA = 132;\r
-       >>\r
-\r
-exception\r
-       <<\r
-               NLA = 133;\r
-       >>\r
-\r
-default\r
-       <<\r
-               NLA = 134;\r
-       >>\r
-\r
-catch\r
-       <<\r
-               NLA = 135;\r
-       >>\r
-\r
-[a-z] [A-Za-z0-9_]*\r
-       <<\r
-               NLA = NonTerminal;\r
-    \r
-    while ( zzchar==' ' || zzchar=='\t' ) {\r
-      zzadvance();\r
-    }\r
-    if ( zzchar == ':' && inAlt ) NLA = LABEL;\r
-       >>\r
-\r
-[A-Z] [A-Za-z0-9_]*\r
-       <<\r
-               NLA = TokenTerm;\r
-    \r
-    while ( zzchar==' ' || zzchar=='\t' ) {\r
-      zzadvance();\r
-    }\r
-    if ( zzchar == ':' && inAlt ) NLA = LABEL;\r
-       >>\r
-\r
-{\\}#[A-Za-z0-9_]*\r
-       <<\r
-               NLA = 136;\r
-    warn(eMsg1("unknown meta-op: %s",LATEXT(1))); zzskip();   \r
-       >>\r
-\r
-\r
-%%STRINGS\r
-\r
-@\r
-       <<\r
-               NLA = Eof;\r
-       >>\r
-\r
-\"\r
-       <<\r
-               NLA = QuotedTerm;\r
-    zzmode(START);   \r
-       >>\r
-\r
-\n|\r|\r\n\r
-       <<\r
-               NLA = 3;\r
-    \r
-    zzline++;\r
-    warn("eoln found in string");\r
-    zzskip();\r
-       >>\r
-\r
-\\(\n|\r|\r\n)\r
-       <<\r
-               NLA = 4;\r
-    zzline++; zzmore();   \r
-       >>\r
-\r
-\\~[]\r
-       <<\r
-               NLA = 5;\r
-    zzmore();   \r
-       >>\r
-\r
-~[\n\r\"\\]+\r
-       <<\r
-               NLA = 6;\r
-    zzmore();   \r
-       >>\r
-\r
-\r
-%%ACTION_STRINGS\r
-\r
-@\r
-       <<\r
-               NLA = Eof;\r
-       >>\r
-\r
-\"\r
-       <<\r
-               NLA = 7;\r
-    zzmode(ACTIONS); zzmore();   \r
-       >>\r
-\r
-\n|\r|\r\n\r
-       <<\r
-               NLA = 8;\r
-    \r
-    zzline++;\r
-    warn("eoln found in string (in user action)");\r
-    zzskip();\r
-       >>\r
-\r
-\\(\n|\r|\r\n)\r
-       <<\r
-               NLA = 9;\r
-    zzline++; zzmore();   \r
-       >>\r
-\r
-\\~[]\r
-       <<\r
-               NLA = 10;\r
-    zzmore();   \r
-       >>\r
-\r
-~[\n\r\"\\]+\r
-       <<\r
-               NLA = 11;\r
-    zzmore();   \r
-       >>\r
-\r
-\r
-%%ACTION_CHARS\r
-\r
-@\r
-       <<\r
-               NLA = Eof;\r
-       >>\r
-\r
-'\r
-       <<\r
-               NLA = 12;\r
-    zzmode(ACTIONS); zzmore();   \r
-       >>\r
-\r
-\n|\r|\r\n\r
-       <<\r
-               NLA = 13;\r
-    \r
-    zzline++;\r
-    warn("eoln found in char literal (in user action)");\r
-    zzskip();\r
-       >>\r
-\r
-\\~[]\r
-       <<\r
-               NLA = 14;\r
-    zzmore();   \r
-       >>\r
-\r
-~[\n\r'\\]+\r
-       <<\r
-               NLA = 15;\r
-    zzmore();   \r
-       >>\r
-\r
-\r
-%%ACTION_COMMENTS\r
-\r
-@\r
-       <<\r
-               NLA = Eof;\r
-       >>\r
-\r
-\*/\r
-       <<\r
-               NLA = 16;\r
-    zzmode(ACTIONS); zzmore();   \r
-       >>\r
-\r
-\*\r
-       <<\r
-               NLA = 17;\r
-    zzmore();   \r
-       >>\r
-\r
-\n|\r|\r\n\r
-       <<\r
-               NLA = 18;\r
-    zzline++; zzmore(); DAWDLE;   \r
-       >>\r
-\r
-~[\n\r\*]+\r
-       <<\r
-               NLA = 19;\r
-    zzmore();   \r
-       >>\r
-\r
-\r
-%%TOK_DEF_COMMENTS\r
-\r
-@\r
-       <<\r
-               NLA = Eof;\r
-       >>\r
-\r
-\*/\r
-       <<\r
-               NLA = 20;\r
-    zzmode(PARSE_ENUM_FILE);\r
-    zzmore();   \r
-       >>\r
-\r
-\*\r
-       <<\r
-               NLA = 21;\r
-    zzmore();   \r
-       >>\r
-\r
-\n|\r|\r\n\r
-       <<\r
-               NLA = 22;\r
-    zzline++; zzmore(); DAWDLE;   \r
-       >>\r
-\r
-~[\n\r\*]+\r
-       <<\r
-               NLA = 23;\r
-    zzmore();   \r
-       >>\r
-\r
-\r
-%%TOK_DEF_CPP_COMMENTS\r
-\r
-@\r
-       <<\r
-               NLA = Eof;\r
-       >>\r
-\r
-\n|\r|\r\n\r
-       <<\r
-               NLA = 24;\r
-    zzline++; zzmode(PARSE_ENUM_FILE); zzskip(); DAWDLE;   \r
-       >>\r
-\r
-~[\n\r]+\r
-       <<\r
-               NLA = 25;\r
-    zzskip();   \r
-       >>\r
-\r
-\r
-%%ACTION_CPP_COMMENTS\r
-\r
-@\r
-       <<\r
-               NLA = Eof;\r
-       >>\r
-\r
-\n|\r|\r\n\r
-       <<\r
-               NLA = 26;\r
-    zzline++; zzmode(ACTIONS); zzmore(); DAWDLE;   \r
-       >>\r
-\r
-~[\n\r]+\r
-       <<\r
-               NLA = 27;\r
-    zzmore();   \r
-       >>\r
-\r
-\r
-%%CPP_COMMENTS\r
-\r
-@\r
-       <<\r
-               NLA = Eof;\r
-       >>\r
-\r
-\n|\r|\r\n\r
-       <<\r
-               NLA = 28;\r
-    zzline++; zzmode(START); zzskip(); DAWDLE;   \r
-       >>\r
-\r
-~[\n\r]+\r
-       <<\r
-               NLA = 29;\r
-    zzskip();   \r
-       >>\r
-\r
-\r
-%%COMMENTS\r
-\r
-@\r
-       <<\r
-               NLA = Eof;\r
-       >>\r
-\r
-\*/\r
-       <<\r
-               NLA = 30;\r
-    zzmode(START); zzskip();   \r
-       >>\r
-\r
-\*\r
-       <<\r
-               NLA = 31;\r
-    zzskip();   \r
-       >>\r
-\r
-\n|\r|\r\n\r
-       <<\r
-               NLA = 32;\r
-    zzline++; zzskip(); DAWDLE;   \r
-       >>\r
-\r
-~[\n\r\*]+\r
-       <<\r
-               NLA = 33;\r
-    zzskip();   \r
-       >>\r
-\r
-\r
-%%ACTIONS\r
-\r
-@\r
-       <<\r
-               NLA = Eof;\r
-       >>\r
-\r
-\>\>\r
-       <<\r
-               NLA = Action;\r
-    /* these do not nest */\r
-    zzmode(START);\r
-    NLATEXT[0] = ' ';\r
-    NLATEXT[1] = ' ';\r
-    zzbegexpr[0] = ' ';\r
-    zzbegexpr[1] = ' ';\r
-    if ( zzbufovf ) {\r
-      err( eMsgd("action buffer overflow; size %d",ZZLEXBUFSIZE));\r
-    }\r
-    \r
-/* MR1 10-Apr-97  MR1  Previously unable to put right shift operator   */\r
-    /* MR1                                     in DLG action                   */\r
-    /* MR1                     Doesn't matter what kind of action it is - reset*/\r
-    \r
-                             tokenActionActive=0;               /* MR1 */\r
-       >>\r
-\r
-\>\>?\r
-       <<\r
-               NLA = Pred;\r
-    /* these do not nest */\r
-    zzmode(START);\r
-    NLATEXT[0] = ' ';\r
-    NLATEXT[1] = ' ';\r
-    zzbegexpr[0] = '\0';\r
-    if ( zzbufovf ) {\r
-      err( eMsgd("predicate buffer overflow; size %d",ZZLEXBUFSIZE));\r
-    };\r
-#ifdef __cplusplus__\r
-    /* MR10 */                    list_apply(CurActionLabels, (void (*)(void *))mark_label_used_in_sem_pred);\r
-#else\r
-#ifdef __STDC__\r
-    /* MR10 */                    list_apply(CurActionLabels, (void (*)(void *))mark_label_used_in_sem_pred);\r
-#else\r
-#ifdef __USE_PROTOS\r
-    /* MRxx */                    list_apply(CurActionLabels, (void (*)(void *))mark_label_used_in_sem_pred);\r
-#else\r
-    /* MR10 */                    list_apply(CurActionLabels,mark_label_used_in_sem_pred);\r
-#endif\r
-#endif\r
-#endif\r
-       >>\r
-\r
-\]\r
-       <<\r
-               NLA = PassAction;\r
-    if ( topint() == ']' ) {\r
-      popint();\r
-      if ( istackempty() )     /* terminate action */\r
-      {\r
-        zzmode(START);\r
-        NLATEXT[0] = ' ';\r
-        zzbegexpr[0] = ' ';\r
-        if ( zzbufovf ) {\r
-          err( eMsgd("parameter buffer overflow; size %d",ZZLEXBUFSIZE));\r
-        }\r
-      }\r
-      else {\r
-        /* terminate $[..] and #[..] */\r
-        if ( GenCC ) zzreplstr("))");\r
-        else zzreplstr(")");\r
-        zzmore();\r
-      }\r
-    }\r
-    else if ( topint() == '|' ) { /* end of simple [...] */\r
-      popint();\r
-      zzmore();\r
-    }\r
-    else zzmore();\r
-       >>\r
-\r
-consumeUntil\( [\ \t]* \{~[\}]+\} [\ \t]* \)\r
-       <<\r
-               NLA = 37;\r
-    \r
-    zzmore();\r
-    zzreplstr(inline_set(zzbegexpr+\r
-    strlen("consumeUntil(")));\r
-       >>\r
-\r
-consumeUntil\( ~[\)]+ \)\r
-       <<\r
-               NLA = 38;\r
-    zzmore();   \r
-       >>\r
-\r
-\n|\r|\r\n\r
-       <<\r
-               NLA = 39;\r
-    zzline++; zzmore(); DAWDLE;   \r
-       >>\r
-\r
-\>\r
-       <<\r
-               NLA = 40;\r
-    zzmore();   \r
-       >>\r
-\r
-$\r
-       <<\r
-               NLA = 41;\r
-    zzmore();   \r
-       >>\r
-\r
-$$\r
-       <<\r
-               NLA = 42;\r
-    if ( !GenCC ) {zzreplstr("zzaRet"); zzmore();}\r
-    else err("$$ use invalid in C++ mode");   \r
-       >>\r
-\r
-$\[\]\r
-       <<\r
-               NLA = 43;\r
-    if ( !GenCC ) {zzreplstr("zzempty_attr"); zzmore();}\r
-    else err("$[] use invalid in C++ mode");   \r
-       >>\r
-\r
-$\[\r
-       <<\r
-               NLA = 44;\r
-    \r
-    pushint(']');\r
-    if ( !GenCC ) zzreplstr("zzconstr_attr(");\r
-    else err("$[..] use invalid in C++ mode");\r
-    zzmore();\r
-       >>\r
-\r
-$[0-9]+\r
-       <<\r
-               NLA = 45;\r
-    {\r
-      static char buf[100];\r
-      numericActionLabel=1;       /* MR10 */\r
-      if ( strlen(zzbegexpr)>(size_t)85 )\r
-      fatal("$i attrib ref too big");\r
-      set_orel(atoi(zzbegexpr+1), &attribsRefdFromAction);\r
-      if ( !GenCC ) sprintf(buf,"zzaArg(zztasp%d,%s)",\r
-      BlkLevel-1,zzbegexpr+1);\r
-      else sprintf(buf,"_t%d%s",\r
-      BlkLevel-1,zzbegexpr+1);\r
-      zzreplstr(buf);\r
-      zzmore();\r
-      UsedOldStyleAttrib = 1;\r
-      if ( UsedNewStyleLabel )\r
-      err("cannot mix old-style $i with new-style labels");\r
-    }\r
-       >>\r
-\r
-$[0-9]+.\r
-       <<\r
-               NLA = 46;\r
-    {\r
-      static char buf[100];\r
-      numericActionLabel=1;       /* MR10 */\r
-      if ( strlen(zzbegexpr)>(size_t)85 )\r
-      fatal("$i.field attrib ref too big");\r
-      zzbegexpr[strlen(zzbegexpr)-1] = ' ';\r
-      set_orel(atoi(zzbegexpr+1), &attribsRefdFromAction);\r
-      if ( !GenCC ) sprintf(buf,"zzaArg(zztasp%d,%s).",\r
-      BlkLevel-1,zzbegexpr+1);\r
-      else sprintf(buf,"_t%d%s.",\r
-      BlkLevel-1,zzbegexpr+1);\r
-      zzreplstr(buf);\r
-      zzmore();\r
-      UsedOldStyleAttrib = 1;\r
-      if ( UsedNewStyleLabel )\r
-      err("cannot mix old-style $i with new-style labels");\r
-    }\r
-       >>\r
-\r
-$[0-9]+.[0-9]+\r
-       <<\r
-               NLA = 47;\r
-    {\r
-      static char buf[100];\r
-      static char i[20], j[20];\r
-      char *p,*q;\r
-      numericActionLabel=1;       /* MR10 */\r
-      if (strlen(zzbegexpr)>(size_t)85) fatal("$i.j attrib ref too big");\r
-      for (p=zzbegexpr+1,q= &i[0]; *p!='.'; p++) {\r
-        if ( q == &i[20] )\r
-        fatalFL("i of $i.j attrib ref too big",\r
-        FileStr[CurFile], zzline );\r
-        *q++ = *p;\r
-      }\r
-      *q = '\0';\r
-      for (p++, q= &j[0]; *p!='\0'; p++) {\r
-        if ( q == &j[20] )\r
-        fatalFL("j of $i.j attrib ref too big",\r
-        FileStr[CurFile], zzline );\r
-        *q++ = *p;\r
-      }\r
-      *q = '\0';\r
-      if ( !GenCC ) sprintf(buf,"zzaArg(zztasp%s,%s)",i,j);\r
-      else sprintf(buf,"_t%s%s",i,j);\r
-      zzreplstr(buf);\r
-      zzmore();\r
-      UsedOldStyleAttrib = 1;\r
-      if ( UsedNewStyleLabel )\r
-      err("cannot mix old-style $i with new-style labels");\r
-    }\r
-       >>\r
-\r
-$[_a-zA-Z][_a-zA-Z0-9]*\r
-       <<\r
-               NLA = 48;\r
-    { static char buf[300]; LabelEntry *el;\r
-      zzbegexpr[0] = ' ';\r
-      if ( CurRule != NULL &&\r
-      strcmp(CurRule, &zzbegexpr[1])==0 ) {\r
-        if ( !GenCC ) zzreplstr("zzaRet");\r
-      }\r
-      else if ( CurRetDef != NULL &&\r
-      strmember(CurRetDef, &zzbegexpr[1])) {\r
-        if ( hasMultipleOperands( CurRetDef ) ) {\r
-          require (strlen(zzbegexpr)<=(size_t)285,\r
-          "$retval attrib ref too big");\r
-          sprintf(buf,"_retv.%s",&zzbegexpr[1]);\r
-          zzreplstr(buf);\r
-        }\r
-        else zzreplstr("_retv");\r
-      }\r
-      else if ( CurParmDef != NULL &&\r
-      strmember(CurParmDef, &zzbegexpr[1])) {\r
-      ;\r
-    }\r
-    else if ( Elabel==NULL ) {\r
-    { err("$-variables in actions outside of rules are not allowed"); }\r
-  } else if ( (el=(LabelEntry *)hash_get(Elabel, &zzbegexpr[1]))!=NULL ) {\r
-  /* MR10 */\r
-  /* MR10 */                      /* element labels might exist without an elem when */\r
-  /* MR10 */                      /*  it is a forward reference (to a rule)          */\r
-  /* MR10 */\r
-  /* MR10 */                                           if ( GenCC && (el->elem == NULL || el->elem->ntype==nRuleRef) )\r
-  /* MR10 */                                                   { err(eMsg1("There are no token ptrs for rule references: '$%s'",&zzbegexpr[1])); }\r
-  /* MR10 */\r
-  /* MR10 */                                           if ( !GenCC && (el->elem == NULL || el->elem->ntype==nRuleRef) && GenAST) {\r
-  /* MR10 */                          err("You can no longer use attributes returned by rules when also using ASTs");\r
-  /* MR10 */                          err("   Use upward inheritance (\"rule >[Attrib a] : ... <<$a=...\>\>\")");\r
-  /* MR10 */                      };\r
-  /* MR10 */\r
-  /* MR10 */                      /* keep track of <<... $label ...>> for semantic predicates in guess mode */\r
-  /* MR10 */                      /* element labels contain pointer to the owners node                      */\r
-  /* MR10 */\r
-  /* MR10 */                      if (el->elem != NULL && el->elem->ntype == nToken) {\r
-  /* MR10 */                        list_add(&CurActionLabels,el);\r
-  /* MR10 */                      };\r
-}\r
-else\r
-warn(eMsg1("$%s not parameter, return value, (defined) element label",&zzbegexpr[1]));\r
-}\r
-zzmore();\r
-       >>\r
-\r
-#0\r
-       <<\r
-               NLA = 49;\r
-    zzreplstr("(*_root)"); zzmore(); chkGTFlag();   \r
-       >>\r
-\r
-#\[\]\r
-       <<\r
-               NLA = 50;\r
-    if ( GenCC ) {\r
-      if (NewAST) zzreplstr("(newAST)");\r
-      else zzreplstr("(new AST)");}\r
-    else {zzreplstr("zzastnew()");} zzmore();\r
-    chkGTFlag();\r
-       >>\r
-\r
-#\(\)\r
-       <<\r
-               NLA = 51;\r
-    zzreplstr("NULL"); zzmore(); chkGTFlag();   \r
-       >>\r
-\r
-#[0-9]+\r
-       <<\r
-               NLA = 52;\r
-    {\r
-      static char buf[100];\r
-      if ( strlen(zzbegexpr)>(size_t)85 )\r
-      fatal("#i AST ref too big");\r
-      if ( GenCC ) sprintf(buf,"_ast%d%s",BlkLevel-1,zzbegexpr+1);\r
-      else sprintf(buf,"zzastArg(%s)",zzbegexpr+1);\r
-      zzreplstr(buf);\r
-      zzmore();\r
-      set_orel(atoi(zzbegexpr+1), &AST_nodes_refd_in_actions);\r
-      chkGTFlag();\r
-    }\r
-       >>\r
-\r
-#line[\ \t]* [0-9]+ {[\ \t]* \"~[\"]+\" ([\ \t]* [0-9]*)* } (\n|\r|\r\n)\r
-       <<\r
-               NLA = 53;\r
-    \r
-    zzline = atoi(zzbegexpr+5) - 1; zzline++; zzmore();\r
-    getFileNameFromTheLineInfo(FileStr[CurFile], zzbegexpr);\r
-       >>\r
-\r
-#line ~[\n\r]* (\n|\r|\r\n)\r
-       <<\r
-               NLA = 54;\r
-    \r
-    zzline++; zzmore();\r
-       >>\r
-\r
-#[_a-zA-Z][_a-zA-Z0-9]*\r
-       <<\r
-               NLA = 55;\r
-    \r
-    if ( !(strcmp(zzbegexpr, "#ifdef")==0 ||\r
-    strcmp(zzbegexpr, "#if")==0 ||\r
-    strcmp(zzbegexpr, "#else")==0 ||\r
-    strcmp(zzbegexpr, "#endif")==0 ||\r
-    strcmp(zzbegexpr, "#ifndef")==0 ||\r
-    strcmp(zzbegexpr, "#define")==0 ||\r
-    strcmp(zzbegexpr, "#pragma")==0 ||\r
-    strcmp(zzbegexpr, "#undef")==0 ||\r
-    strcmp(zzbegexpr, "#import")==0 ||\r
-    strcmp(zzbegexpr, "#line")==0 ||\r
-    strcmp(zzbegexpr, "#include")==0 ||\r
-    strcmp(zzbegexpr, "#error")==0) )\r
-    {\r
-      static char buf[100];\r
-      sprintf(buf, "%s_ast", zzbegexpr+1);\r
-      /* MR27 */                                               list_add(&CurAstLabelsInActions, mystrdup(zzbegexpr+1));\r
-      zzreplstr(buf);\r
-      chkGTFlag();\r
-    }\r
-    zzmore();\r
-       >>\r
-\r
-#\[\r
-       <<\r
-               NLA = 56;\r
-    \r
-    pushint(']');\r
-    if ( GenCC ) {\r
-      if (NewAST) zzreplstr("(newAST(");\r
-      else zzreplstr("(new AST("); }\r
-    else zzreplstr("zzmk_ast(zzastnew(),");\r
-    zzmore();\r
-    chkGTFlag();\r
-       >>\r
-\r
-#\(\r
-       <<\r
-               NLA = 57;\r
-    \r
-    pushint('}');\r
-    if ( GenCC ) {\r
-      if (tmakeInParser) {\r
-        zzreplstr("tmake(");\r
-      }\r
-      else {\r
-        zzreplstr("ASTBase::tmake(");\r
-      }\r
-    }\r
-    else {\r
-      zzreplstr("zztmake(");\r
-    }\r
-    zzmore();\r
-    chkGTFlag();\r
-       >>\r
-\r
-#\r
-       <<\r
-               NLA = 58;\r
-    zzmore();   \r
-       >>\r
-\r
-\)\r
-       <<\r
-               NLA = 59;\r
-    \r
-    if ( istackempty() )\r
-    zzmore();\r
-    else if ( topint()==')' ) {\r
-      popint();\r
-    }\r
-    else if ( topint()=='}' ) {\r
-      popint();\r
-      /* terminate #(..) */\r
-      zzreplstr(", NULL)");\r
-    }\r
-    zzmore();\r
-       >>\r
-\r
-\[\r
-       <<\r
-               NLA = 60;\r
-    \r
-    pushint('|');      /* look for '|' to terminate simple [...] */\r
-    zzmore();\r
-       >>\r
-\r
-\(\r
-       <<\r
-               NLA = 61;\r
-    \r
-    pushint(')');\r
-    zzmore();\r
-       >>\r
-\r
-\\\]\r
-       <<\r
-               NLA = 62;\r
-    zzreplstr("]");  zzmore();   \r
-       >>\r
-\r
-\\\)\r
-       <<\r
-               NLA = 63;\r
-    zzreplstr(")");  zzmore();   \r
-       >>\r
-\r
-\\>\r
-       <<\r
-               NLA = 64;\r
-    if (! tokenActionActive) zzreplstr(">");    /* MR1 */\r
-    zzmore();                                   /* MR1 */\r
-       >>\r
-\r
-'\r
-       <<\r
-               NLA = 65;\r
-    zzmode(ACTION_CHARS); zzmore();  \r
-       >>\r
-\r
-\"\r
-       <<\r
-               NLA = 66;\r
-    zzmode(ACTION_STRINGS); zzmore();  \r
-       >>\r
-\r
-\\$\r
-       <<\r
-               NLA = 67;\r
-    zzreplstr("$");  zzmore();   \r
-       >>\r
-\r
-\\#\r
-       <<\r
-               NLA = 68;\r
-    zzreplstr("#");  zzmore();   \r
-       >>\r
-\r
-\\(\n|\r|\r\n)\r
-       <<\r
-               NLA = 69;\r
-    zzline++; zzmore();   \r
-       >>\r
-\r
-\\~[\]\)>$#]\r
-       <<\r
-               NLA = 70;\r
-    zzmore();   \r
-       >>\r
-\r
-/\r
-       <<\r
-               NLA = 71;\r
-    zzmore();   \r
-       >>\r
-\r
-/\*\r
-       <<\r
-               NLA = 72;\r
-    zzmode(ACTION_COMMENTS); zzmore();   \r
-       >>\r
-\r
-\*/\r
-       <<\r
-               NLA = 73;\r
-    warn("Missing /*; found dangling */ in action"); zzmore();   \r
-       >>\r
-\r
-//\r
-       <<\r
-               NLA = 74;\r
-    zzmode(ACTION_CPP_COMMENTS); zzmore();   \r
-       >>\r
-\r
-~[\n\r\)\(\\$#\>\]\[\"'/]+\r
-       <<\r
-               NLA = 75;\r
-    zzmore();   \r
-       >>\r
-\r
-\r
-%%PARSE_ENUM_FILE\r
-\r
-@\r
-       <<\r
-               NLA = Eof;\r
-    ;   \r
-       >>\r
-\r
-[\t\ ]+\r
-       <<\r
-               NLA = 137;\r
-    zzskip();   \r
-       >>\r
-\r
-\n|\r|\r\n\r
-       <<\r
-               NLA = 138;\r
-    zzline++; zzskip();   \r
-       >>\r
-\r
-//\r
-       <<\r
-               NLA = 139;\r
-    zzmode(TOK_DEF_CPP_COMMENTS); zzmore();   \r
-       >>\r
-\r
-/\*\r
-       <<\r
-               NLA = 140;\r
-    zzmode(TOK_DEF_COMMENTS); zzskip();   \r
-       >>\r
-\r
-#ifdef\r
-       <<\r
-               NLA = 141;\r
-    zzmode(TOK_DEF_CPP_COMMENTS); zzskip();   \r
-       >>\r
-\r
-#if\r
-       <<\r
-               NLA = 142;\r
-    zzmode(TOK_DEF_CPP_COMMENTS); zzskip();   \r
-       >>\r
-\r
-#ifndef\r
-       <<\r
-               NLA = 143;\r
-    ;   \r
-       >>\r
-\r
-#else\r
-       <<\r
-               NLA = 144;\r
-    zzmode(TOK_DEF_CPP_COMMENTS); zzskip();   \r
-       >>\r
-\r
-#endif\r
-       <<\r
-               NLA = 145;\r
-    zzmode(TOK_DEF_CPP_COMMENTS); zzskip();   \r
-       >>\r
-\r
-#undef\r
-       <<\r
-               NLA = 146;\r
-    zzmode(TOK_DEF_CPP_COMMENTS); zzskip();   \r
-       >>\r
-\r
-#import\r
-       <<\r
-               NLA = 147;\r
-    zzmode(TOK_DEF_CPP_COMMENTS); zzskip();   \r
-       >>\r
-\r
-#define\r
-       <<\r
-               NLA = 149;\r
-       >>\r
-\r
-enum\r
-       <<\r
-               NLA = 151;\r
-       >>\r
-\r
-\{\r
-       <<\r
-               NLA = 152;\r
-       >>\r
-\r
-=\r
-       <<\r
-               NLA = 153;\r
-       >>\r
-\r
-,\r
-       <<\r
-               NLA = 154;\r
-       >>\r
-\r
-\}\r
-       <<\r
-               NLA = 155;\r
-       >>\r
-\r
-;\r
-       <<\r
-               NLA = 156;\r
-       >>\r
-\r
-[0-9]+\r
-       <<\r
-               NLA = INT;\r
-       >>\r
-\r
-[a-zA-Z_][_a-zA-Z0-9]*\r
-       <<\r
-               NLA = ID;\r
-       >>\r
-\r
-%%\r