Minor consistency fixes wrt. piyacc.git commit 6558f0b master
authorNick Downing <nick@ndcode.org>
Mon, 21 Jan 2019 06:20:27 +0000 (17:20 +1100)
committerNick Downing <nick@ndcode.org>
Mon, 21 Jan 2019 06:20:27 +0000 (17:20 +1100)
src/scan-gram.c
src/scan-gram.l

index bf2910e..a873855 100644 (file)
@@ -1231,14 +1231,14 @@ static const flex_int16_t yy_rule_linenum[134] =
       268,  269,  271,  272,  273,  274,  275,  276,  277,  278,
       279,  282,  283,  284,  285,  286,  287,  288,  289,  290,
       291,  292,  294,  298,  299,  300,  302,  314,  328,  345,
-      350,  353,  356,  359,  371,  382,  391,  396,  397,  398,
-      408,  422,  429,  449,  459,  474,  484,  511,  524,  540,
-      555,  572,  573,  584,  595,  596,  608,  624,  634,  661,
-
-      673,  695,  696,  707,  722,  738,  739,  740,  741,  742,
-      743,  744,  747,  749,  763,  781,  786,  787,  793,  794,
-      806,  812,  818,  824,  841,  842,  846,  853,  878,  904,
-      932,  979,  981
+      350,  353,  356,  359,  376,  387,  396,  401,  402,  403,
+      413,  427,  434,  454,  464,  483,  495,  522,  535,  551,
+      566,  583,  584,  595,  606,  607,  619,  635,  645,  672,
+
+      684,  706,  707,  718,  733,  749,  750,  751,  752,  753,
+      754,  755,  758,  760,  774,  792,  797,  798,  804,  805,
+      817,  823,  829,  835,  852,  853,  857,  864,  894,  920,
+      948,  995,  997
     } ;
 
 /* The intent behind this definition is that it'll catch
@@ -2262,16 +2262,21 @@ YY_RULE_SETUP
     code_start = loc->start;
     BEGIN SC_BRACED_CODE;
  gram_piece_pack();
+#if 1 /* new way, includes braces, wrapped by <AST_Production_Action> later */
+ gram_piece_append("<AST_Text>");
+ gram_piece_flush(strlen(yytext));
+#else
  gram_piece_append("<AST_BracedCode>");
  gram_piece_flush(strlen(yytext));
  gram_piece_append("<AST_Text>");
+#endif
   }
        YY_BREAK
 /* Semantic predicate. */
 case 75:
 /* rule 75 can match eol */
 YY_RULE_SETUP
-#line 371 "src/scan-gram.l"
+#line 376 "src/scan-gram.l"
 {
     nesting = 0;
     code_start = loc->start;
@@ -2285,7 +2290,7 @@ YY_RULE_SETUP
 /* Nick extra rules for element groups */
 case 76:
 YY_RULE_SETUP
-#line 382 "src/scan-gram.l"
+#line 387 "src/scan-gram.l"
 {
     STRING_GROW;
     nesting = 0;
@@ -2298,7 +2303,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 77:
 YY_RULE_SETUP
-#line 391 "src/scan-gram.l"
+#line 396 "src/scan-gram.l"
 {
     return ')';
   }
@@ -2306,17 +2311,17 @@ YY_RULE_SETUP
 /* A type. */
 case 78:
 YY_RULE_SETUP
-#line 396 "src/scan-gram.l"
+#line 401 "src/scan-gram.l"
 gram_piece_pack(); gram_piece_append("<AST_TagRef>&lt;<AST_Text>*</AST_Text>&gt;</AST_TagRef>"); return ~TAG_ANY; /*return TAG_ANY;*/
        YY_BREAK
 case 79:
 YY_RULE_SETUP
-#line 397 "src/scan-gram.l"
+#line 402 "src/scan-gram.l"
 gram_piece_pack(); gram_piece_append("<AST_TagRef>&lt;<AST_Text />&gt;</AST_TagRef>"); return ~TAG_NONE; /*return TAG_NONE;*/
        YY_BREAK
 case 80:
 YY_RULE_SETUP
-#line 398 "src/scan-gram.l"
+#line 403 "src/scan-gram.l"
 {
     nesting = 0;
     token_start = loc->start;
@@ -2329,7 +2334,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 81:
 YY_RULE_SETUP
-#line 408 "src/scan-gram.l"
+#line 413 "src/scan-gram.l"
 {
     static int percent_percent_count;
     if (++percent_percent_count == 2)
@@ -2346,7 +2351,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 82:
 YY_RULE_SETUP
-#line 422 "src/scan-gram.l"
+#line 427 "src/scan-gram.l"
 {
     bracketed_id_str = NULL;
     bracketed_id_start = loc->start;
@@ -2356,7 +2361,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 83:
 YY_RULE_SETUP
-#line 429 "src/scan-gram.l"
+#line 434 "src/scan-gram.l"
 {
     complain (loc, complaint, "%s: %s",
               ngettext ("invalid character", "invalid characters", yyleng),
@@ -2364,7 +2369,7 @@ YY_RULE_SETUP
   }
        YY_BREAK
 case YY_STATE_EOF(INITIAL):
-#line 435 "src/scan-gram.l"
+#line 440 "src/scan-gram.l"
 {
     loc->start = loc->end = scanner_cursor;
     yyterminate ();
@@ -2379,7 +2384,7 @@ case YY_STATE_EOF(INITIAL):
 
 case 84:
 YY_RULE_SETUP
-#line 449 "src/scan-gram.l"
+#line 454 "src/scan-gram.l"
 complain (loc, complaint, _("invalid null character"));
        YY_BREAK
 
@@ -2390,14 +2395,18 @@ complain (loc, complaint, _("invalid null character"));
 
 case 85:
 YY_RULE_SETUP
-#line 459 "src/scan-gram.l"
+#line 464 "src/scan-gram.l"
 {
     if (bracketed_id_str)
       {
         ROLLBACK_CURRENT_TOKEN;
         BEGIN SC_RETURN_BRACKETED_ID;
         *loc = id_loc;
+#if 1
+ return ~ID;
+#else
         return ID;
+#endif
       }
     else
       {
@@ -2409,12 +2418,14 @@ YY_RULE_SETUP
        YY_BREAK
 case 86:
 YY_RULE_SETUP
-#line 474 "src/scan-gram.l"
+#line 483 "src/scan-gram.l"
 {
     BEGIN (bracketed_id_str ? SC_RETURN_BRACKETED_ID : INITIAL);
     *loc = id_loc;
 #if 1
  gram_piece_escape(yytext, strlen(yytext));
+ --gram_piece0;
+ gram_piece_pack();
  return ~ID_COLON;
 #else
     return ID_COLON;
@@ -2423,7 +2434,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 87:
 YY_RULE_SETUP
-#line 484 "src/scan-gram.l"
+#line 495 "src/scan-gram.l"
 {
     ROLLBACK_CURRENT_TOKEN;
     BEGIN (bracketed_id_str ? SC_RETURN_BRACKETED_ID : INITIAL);
@@ -2436,7 +2447,7 @@ YY_RULE_SETUP
   }
        YY_BREAK
 case YY_STATE_EOF(SC_AFTER_IDENTIFIER):
-#line 494 "src/scan-gram.l"
+#line 505 "src/scan-gram.l"
 {
     BEGIN (bracketed_id_str ? SC_RETURN_BRACKETED_ID : INITIAL);
     *loc = id_loc;
@@ -2455,7 +2466,7 @@ case YY_STATE_EOF(SC_AFTER_IDENTIFIER):
 
 case 88:
 YY_RULE_SETUP
-#line 511 "src/scan-gram.l"
+#line 522 "src/scan-gram.l"
 {
     if (bracketed_id_str)
       {
@@ -2472,7 +2483,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 89:
 YY_RULE_SETUP
-#line 524 "src/scan-gram.l"
+#line 535 "src/scan-gram.l"
 {
     BEGIN bracketed_id_context_state;
     if (bracketed_id_str)
@@ -2491,7 +2502,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 90:
 YY_RULE_SETUP
-#line 540 "src/scan-gram.l"
+#line 551 "src/scan-gram.l"
 {
     complain (loc, complaint, "%s: %s",
               ngettext ("invalid character in bracketed name",
@@ -2500,7 +2511,7 @@ YY_RULE_SETUP
   }
        YY_BREAK
 case YY_STATE_EOF(SC_BRACKETED_ID):
-#line 547 "src/scan-gram.l"
+#line 558 "src/scan-gram.l"
 {
     BEGIN bracketed_id_context_state;
     unexpected_eof (bracketed_id_start, "]");
@@ -2511,7 +2522,7 @@ case YY_STATE_EOF(SC_BRACKETED_ID):
 
 case 91:
 YY_RULE_SETUP
-#line 555 "src/scan-gram.l"
+#line 566 "src/scan-gram.l"
 {
     ROLLBACK_CURRENT_TOKEN;
     val->uniqstr = bracketed_id_str;
@@ -2529,17 +2540,17 @@ YY_RULE_SETUP
 
 case 92:
 YY_RULE_SETUP
-#line 572 "src/scan-gram.l"
+#line 583 "src/scan-gram.l"
 BEGIN context_state;
        YY_BREAK
 case 93:
 /* rule 93 can match eol */
 YY_RULE_SETUP
-#line 573 "src/scan-gram.l"
+#line 584 "src/scan-gram.l"
 continue;
        YY_BREAK
 case YY_STATE_EOF(SC_YACC_COMMENT):
-#line 574 "src/scan-gram.l"
+#line 585 "src/scan-gram.l"
 unexpected_eof (token_start, "*/"); BEGIN context_state;
        YY_BREAK
 
@@ -2551,11 +2562,11 @@ unexpected_eof (token_start, "*/"); BEGIN context_state;
 case 94:
 /* rule 94 can match eol */
 YY_RULE_SETUP
-#line 584 "src/scan-gram.l"
+#line 595 "src/scan-gram.l"
 STRING_GROW; BEGIN context_state;
        YY_BREAK
 case YY_STATE_EOF(SC_COMMENT):
-#line 585 "src/scan-gram.l"
+#line 596 "src/scan-gram.l"
 unexpected_eof (token_start, "*/"); BEGIN context_state;
        YY_BREAK
 
@@ -2567,17 +2578,17 @@ unexpected_eof (token_start, "*/"); BEGIN context_state;
 case 95:
 /* rule 95 can match eol */
 YY_RULE_SETUP
-#line 595 "src/scan-gram.l"
+#line 606 "src/scan-gram.l"
 STRING_GROW; BEGIN context_state;
        YY_BREAK
 case 96:
 /* rule 96 can match eol */
 YY_RULE_SETUP
-#line 596 "src/scan-gram.l"
+#line 607 "src/scan-gram.l"
 STRING_GROW;
        YY_BREAK
 case YY_STATE_EOF(SC_LINE_COMMENT):
-#line 597 "src/scan-gram.l"
+#line 608 "src/scan-gram.l"
 BEGIN context_state;
        YY_BREAK
 
@@ -2589,7 +2600,7 @@ BEGIN context_state;
 
 case 97:
 YY_RULE_SETUP
-#line 608 "src/scan-gram.l"
+#line 619 "src/scan-gram.l"
 {
     STRING_FINISH;
     loc->start = token_start;
@@ -2607,13 +2618,13 @@ YY_RULE_SETUP
   }
        YY_BREAK
 case YY_STATE_EOF(SC_ESCAPED_STRING):
-#line 623 "src/scan-gram.l"
+#line 634 "src/scan-gram.l"
 unexpected_eof (token_start, "\"");
        YY_BREAK
 case 98:
 /* rule 98 can match eol */
 YY_RULE_SETUP
-#line 624 "src/scan-gram.l"
+#line 635 "src/scan-gram.l"
 unexpected_newline (token_start, "\"");
        YY_BREAK
 
@@ -2625,7 +2636,7 @@ unexpected_newline (token_start, "\"");
 
 case 99:
 YY_RULE_SETUP
-#line 634 "src/scan-gram.l"
+#line 645 "src/scan-gram.l"
 {
     STRING_FINISH;
     loc->start = token_start;
@@ -2657,11 +2668,11 @@ YY_RULE_SETUP
 case 100:
 /* rule 100 can match eol */
 YY_RULE_SETUP
-#line 661 "src/scan-gram.l"
+#line 672 "src/scan-gram.l"
 unexpected_newline (token_start, "'");
        YY_BREAK
 case YY_STATE_EOF(SC_ESCAPED_CHARACTER):
-#line 662 "src/scan-gram.l"
+#line 673 "src/scan-gram.l"
 unexpected_eof (token_start, "'");
        YY_BREAK
 
@@ -2672,7 +2683,7 @@ unexpected_eof (token_start, "'");
 
 case 101:
 YY_RULE_SETUP
-#line 673 "src/scan-gram.l"
+#line 684 "src/scan-gram.l"
 {
     --nesting;
     if (nesting < 0)
@@ -2698,16 +2709,16 @@ YY_RULE_SETUP
 case 102:
 /* rule 102 can match eol */
 YY_RULE_SETUP
-#line 695 "src/scan-gram.l"
+#line 706 "src/scan-gram.l"
 STRING_GROW;
        YY_BREAK
 case 103:
 YY_RULE_SETUP
-#line 696 "src/scan-gram.l"
+#line 707 "src/scan-gram.l"
 STRING_GROW; nesting += yyleng;
        YY_BREAK
 case YY_STATE_EOF(SC_TAG):
-#line 698 "src/scan-gram.l"
+#line 709 "src/scan-gram.l"
 unexpected_eof (token_start, ">");
        YY_BREAK
 
@@ -2718,7 +2729,7 @@ unexpected_eof (token_start, ">");
 
 case 104:
 YY_RULE_SETUP
-#line 707 "src/scan-gram.l"
+#line 718 "src/scan-gram.l"
 {
     unsigned long int c = strtoul (yytext + 1, NULL, 8);
     if (!c || UCHAR_MAX < c)
@@ -2736,7 +2747,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 105:
 YY_RULE_SETUP
-#line 722 "src/scan-gram.l"
+#line 733 "src/scan-gram.l"
 {
     verify (UCHAR_MAX < ULONG_MAX);
     unsigned long int c = strtoul (yytext + 2, NULL, 16);
@@ -2755,48 +2766,48 @@ YY_RULE_SETUP
        YY_BREAK
 case 106:
 YY_RULE_SETUP
-#line 738 "src/scan-gram.l"
+#line 749 "src/scan-gram.l"
 obstack_1grow (&obstack_for_string, '\a'); gram_piece_append("<AST_Text_Escape character=\"7\">"); gram_piece_flush(strlen(yytext)); gram_piece_append("</AST_Text_Escape>");
        YY_BREAK
 case 107:
 YY_RULE_SETUP
-#line 739 "src/scan-gram.l"
+#line 750 "src/scan-gram.l"
 obstack_1grow (&obstack_for_string, '\b'); gram_piece_append("<AST_Text_Escape character=\"8\">"); gram_piece_flush(strlen(yytext)); gram_piece_append("</AST_Text_Escape>");
        YY_BREAK
 case 108:
 YY_RULE_SETUP
-#line 740 "src/scan-gram.l"
+#line 751 "src/scan-gram.l"
 obstack_1grow (&obstack_for_string, '\f'); gram_piece_append("<AST_Text_Escape character=\"12\">"); gram_piece_flush(strlen(yytext)); gram_piece_append("</AST_Text_Escape>");
        YY_BREAK
 case 109:
 YY_RULE_SETUP
-#line 741 "src/scan-gram.l"
+#line 752 "src/scan-gram.l"
 obstack_1grow (&obstack_for_string, '\n'); gram_piece_append("<AST_Text_Escape character=\"10\">"); gram_piece_flush(strlen(yytext)); gram_piece_append("</AST_Text_Escape>");
        YY_BREAK
 case 110:
 YY_RULE_SETUP
-#line 742 "src/scan-gram.l"
+#line 753 "src/scan-gram.l"
 obstack_1grow (&obstack_for_string, '\r'); gram_piece_append("<AST_Text_Escape character=\"13\">"); gram_piece_flush(strlen(yytext)); gram_piece_append("</AST_Text_Escape>");
        YY_BREAK
 case 111:
 YY_RULE_SETUP
-#line 743 "src/scan-gram.l"
+#line 754 "src/scan-gram.l"
 obstack_1grow (&obstack_for_string, '\t'); gram_piece_append("<AST_Text_Escape character=\"9\">"); gram_piece_flush(strlen(yytext)); gram_piece_append("</AST_Text_Escape>");
        YY_BREAK
 case 112:
 YY_RULE_SETUP
-#line 744 "src/scan-gram.l"
+#line 755 "src/scan-gram.l"
 obstack_1grow (&obstack_for_string, '\v'); gram_piece_append("<AST_Text_Escape character=\"11\">"); gram_piece_flush(strlen(yytext)); gram_piece_append("</AST_Text_Escape>");
        YY_BREAK
 /* \\[\"\'?\\] would be shorter, but it confuses xgettext.  */
 case 113:
 YY_RULE_SETUP
-#line 747 "src/scan-gram.l"
+#line 758 "src/scan-gram.l"
 obstack_1grow (&obstack_for_string, yytext[1]); sprintf(gram_piece_temp, "<AST_Text_Escape character=\"%d\">", yytext[1]); gram_piece_append(gram_piece_temp); gram_piece_flush(strlen(yytext)); gram_piece_append("</AST_Text_Escape>"); 
        YY_BREAK
 case 114:
 YY_RULE_SETUP
-#line 749 "src/scan-gram.l"
+#line 760 "src/scan-gram.l"
 {
     int c = convert_ucn_to_byte (yytext);
     if (c <= 0)
@@ -2815,7 +2826,7 @@ YY_RULE_SETUP
 case 115:
 /* rule 115 can match eol */
 YY_RULE_SETUP
-#line 763 "src/scan-gram.l"
+#line 774 "src/scan-gram.l"
 {
     char const *p = yytext + 1;
     /* Quote only if escaping won't make the character visible.  */
@@ -2836,7 +2847,7 @@ YY_RULE_SETUP
 case 116:
 /* rule 116 can match eol */
 YY_RULE_SETUP
-#line 781 "src/scan-gram.l"
+#line 792 "src/scan-gram.l"
 STRING_GROW;
        YY_BREAK
 
@@ -2844,17 +2855,17 @@ STRING_GROW;
 
 case 117:
 YY_RULE_SETUP
-#line 786 "src/scan-gram.l"
+#line 797 "src/scan-gram.l"
 STRING_GROW; BEGIN context_state;
        YY_BREAK
 case 118:
 /* rule 118 can match eol */
 YY_RULE_SETUP
-#line 787 "src/scan-gram.l"
+#line 798 "src/scan-gram.l"
 unexpected_newline (token_start, "'");
        YY_BREAK
 case YY_STATE_EOF(SC_CHARACTER):
-#line 788 "src/scan-gram.l"
+#line 799 "src/scan-gram.l"
 unexpected_eof (token_start, "'");
        YY_BREAK
 
@@ -2862,17 +2873,17 @@ unexpected_eof (token_start, "'");
 
 case 119:
 YY_RULE_SETUP
-#line 793 "src/scan-gram.l"
+#line 804 "src/scan-gram.l"
 STRING_GROW; BEGIN context_state;
        YY_BREAK
 case 120:
 /* rule 120 can match eol */
 YY_RULE_SETUP
-#line 794 "src/scan-gram.l"
+#line 805 "src/scan-gram.l"
 unexpected_newline (token_start, "\"");
        YY_BREAK
 case YY_STATE_EOF(SC_STRING):
-#line 795 "src/scan-gram.l"
+#line 806 "src/scan-gram.l"
 unexpected_eof (token_start, "\"");
        YY_BREAK
 
@@ -2884,7 +2895,7 @@ unexpected_eof (token_start, "\"");
 
 case 121:
 YY_RULE_SETUP
-#line 806 "src/scan-gram.l"
+#line 817 "src/scan-gram.l"
 {
     STRING_GROW;
     context_state = YY_START;
@@ -2894,7 +2905,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 122:
 YY_RULE_SETUP
-#line 812 "src/scan-gram.l"
+#line 823 "src/scan-gram.l"
 {
     STRING_GROW;
     context_state = YY_START;
@@ -2905,7 +2916,7 @@ YY_RULE_SETUP
 case 123:
 /* rule 123 can match eol */
 YY_RULE_SETUP
-#line 818 "src/scan-gram.l"
+#line 829 "src/scan-gram.l"
 {
     STRING_GROW;
     context_state = YY_START;
@@ -2916,7 +2927,7 @@ YY_RULE_SETUP
 case 124:
 /* rule 124 can match eol */
 YY_RULE_SETUP
-#line 824 "src/scan-gram.l"
+#line 835 "src/scan-gram.l"
 {
     STRING_GROW;
     context_state = YY_START;
@@ -2934,13 +2945,13 @@ YY_RULE_SETUP
 case 125:
 /* rule 125 can match eol */
 YY_RULE_SETUP
-#line 841 "src/scan-gram.l"
+#line 852 "src/scan-gram.l"
 STRING_GROW; nesting++;
        YY_BREAK
 case 126:
 /* rule 126 can match eol */
 YY_RULE_SETUP
-#line 842 "src/scan-gram.l"
+#line 853 "src/scan-gram.l"
 STRING_GROW; nesting--;
        YY_BREAK
 /* Tokenize '<<%' correctly (as '<<' '%') rather than incorrrectly
@@ -2948,13 +2959,13 @@ STRING_GROW; nesting--;
 case 127:
 /* rule 127 can match eol */
 YY_RULE_SETUP
-#line 846 "src/scan-gram.l"
+#line 857 "src/scan-gram.l"
 STRING_GROW;
        YY_BREAK
 case YY_STATE_EOF(SC_BRACED_CODE):
 case YY_STATE_EOF(SC_PREDICATE):
 case YY_STATE_EOF(SC_ELEMENT_GROUP):
-#line 848 "src/scan-gram.l"
+#line 859 "src/scan-gram.l"
 unexpected_eof (code_start, "}");
        YY_BREAK
 
@@ -2962,7 +2973,7 @@ unexpected_eof (code_start, "}");
 
 case 128:
 YY_RULE_SETUP
-#line 853 "src/scan-gram.l"
+#line 864 "src/scan-gram.l"
 {
     obstack_1grow (&obstack_for_string, '}');
 
@@ -2974,9 +2985,14 @@ YY_RULE_SETUP
         val->code = last_string;
         BEGIN INITIAL;
 #if 1
+#if 1 /* new way, includes braces, wrapped by <AST_Production_Action> later */
+ gram_piece_escape(yytext, strlen(yytext));
+ gram_piece_append("</AST_Text>");
+#else 
  gram_piece_append("</AST_Text>");
  gram_piece_escape(yytext, strlen(yytext));
  gram_piece_append("</AST_BracedCode>");
+#endif
  gram_piece_pack();
  return ~BRACED_CODE;
 #else
@@ -2990,7 +3006,7 @@ YY_RULE_SETUP
 
 case 129:
 YY_RULE_SETUP
-#line 878 "src/scan-gram.l"
+#line 894 "src/scan-gram.l"
 {
     --nesting;
     if (nesting < 0)
@@ -3019,7 +3035,7 @@ YY_RULE_SETUP
 
 case 130:
 YY_RULE_SETUP
-#line 904 "src/scan-gram.l"
+#line 920 "src/scan-gram.l"
 {
     obstack_1grow (&obstack_for_string, '}');
 
@@ -3049,7 +3065,7 @@ YY_RULE_SETUP
 
 case 131:
 YY_RULE_SETUP
-#line 932 "src/scan-gram.l"
+#line 948 "src/scan-gram.l"
 {
     STRING_FINISH;
     loc->start = code_start;
@@ -3067,7 +3083,7 @@ YY_RULE_SETUP
   }
        YY_BREAK
 case YY_STATE_EOF(SC_PROLOGUE):
-#line 948 "src/scan-gram.l"
+#line 964 "src/scan-gram.l"
 unexpected_eof (code_start, "%}");
        YY_BREAK
 
@@ -3078,7 +3094,7 @@ unexpected_eof (code_start, "%}");
 
 
 case YY_STATE_EOF(SC_EPILOGUE):
-#line 959 "src/scan-gram.l"
+#line 975 "src/scan-gram.l"
 {
     STRING_FINISH;
     loc->start = code_start;
@@ -3098,20 +3114,20 @@ case YY_STATE_EOF(SC_EPILOGUE):
   `-----------------------------------------------------*/
 /* Nick added: SC_ELEMENT_GROUP */
 case 132:
-#line 980 "src/scan-gram.l"
+#line 996 "src/scan-gram.l"
 /* Nick added: SC_ELEMENT_GROUP */
 case 133:
 /* rule 133 can match eol */
 YY_RULE_SETUP
-#line 981 "src/scan-gram.l"
+#line 997 "src/scan-gram.l"
 STRING_GROW;
        YY_BREAK
 case 134:
 YY_RULE_SETUP
-#line 984 "src/scan-gram.l"
+#line 1000 "src/scan-gram.l"
 YY_FATAL_ERROR( "flex scanner jammed" );
        YY_BREAK
-#line 3101 "src/scan-gram.c"
+#line 3117 "src/scan-gram.c"
 case YY_STATE_EOF(SC_RETURN_BRACKETED_ID):
        yyterminate();
 
@@ -4263,7 +4279,7 @@ void yyfree (void * ptr )
 
 /* %ok-for-header */
 
-#line 984 "src/scan-gram.l"
+#line 1000 "src/scan-gram.l"
 
 
 /* Read bytes from FP into buffer BUF of size SIZE.  Return the
index 7c15c56..bb9f19c 100644 (file)
@@ -361,9 +361,14 @@ eqopt    ([[:space:]]*=)?
     code_start = loc->start;
     BEGIN SC_BRACED_CODE;
  gram_piece_pack();
+#if 1 /* new way, includes braces, wrapped by <AST_Production_Action> later */
+ gram_piece_append("<AST_Text>");
+ gram_piece_flush(strlen(yytext));
+#else
  gram_piece_append("<AST_BracedCode>");
  gram_piece_flush(strlen(yytext));
  gram_piece_append("<AST_Text>");
+#endif
   }
 
   /* Semantic predicate. */
@@ -461,7 +466,11 @@ eqopt    ([[:space:]]*=)?
         ROLLBACK_CURRENT_TOKEN;
         BEGIN SC_RETURN_BRACKETED_ID;
         *loc = id_loc;
+#if 1
+ return ~ID;
+#else
         return ID;
+#endif
       }
     else
       {
@@ -475,6 +484,8 @@ eqopt    ([[:space:]]*=)?
     *loc = id_loc;
 #if 1
  gram_piece_escape(yytext, strlen(yytext));
+ --gram_piece0;
+ gram_piece_pack();
  return ~ID_COLON;
 #else
     return ID_COLON;
@@ -860,9 +871,14 @@ eqopt    ([[:space:]]*=)?
         val->code = last_string;
         BEGIN INITIAL;
 #if 1
+#if 1 /* new way, includes braces, wrapped by <AST_Production_Action> later */
+ gram_piece_escape(yytext, strlen(yytext));
+ gram_piece_append("</AST_Text>");
+#else 
  gram_piece_append("</AST_Text>");
  gram_piece_escape(yytext, strlen(yytext));
  gram_piece_append("</AST_BracedCode>");
+#endif
  gram_piece_pack();
  return ~BRACED_CODE;
 #else