more nword() usages, and mark some dubious places.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@23669 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.4
Luigi Rizzo 20 years ago
parent f239ec2080
commit 85480376f7

@ -573,12 +573,12 @@ static const unsigned short int yyrline[] =
401, 405, 408, 411, 414, 415, 416, 414, 422, 422, 401, 405, 408, 411, 414, 415, 416, 414, 422, 422,
426, 428, 431, 433, 435, 438, 438, 471, 472, 473, 426, 428, 431, 433, 435, 438, 438, 471, 472, 473,
474, 478, 482, 486, 489, 490, 495, 496, 499, 502, 474, 478, 482, 486, 489, 490, 495, 496, 499, 502,
506, 510, 514, 520, 523, 526, 533, 540, 547, 556, 506, 510, 514, 521, 524, 527, 534, 541, 548, 557,
556, 561, 566, 566, 576, 583, 586, 587, 590, 593, 557, 562, 567, 567, 577, 584, 587, 588, 591, 592,
596, 603, 604, 609, 613, 617, 621, 624, 627, 632, 595, 601, 602, 607, 611, 615, 619, 622, 625, 630,
633, 638, 639, 645, 650, 655, 656, 659, 662, 667, 631, 636, 637, 643, 648, 653, 654, 657, 660, 665,
670, 673, 690, 703, 708, 726, 741, 744, 745, 748, 668, 671, 685, 694, 699, 714, 726, 729, 730, 733,
751 736
}; };
#endif #endif
@ -2619,24 +2619,24 @@ yyreduce:
break; break;
case 103: case 103:
#line 520 "ael.y" #line 521 "ael.y"
{ {
(yyval.pval) = nword((yyvsp[0].str), &(yylsp[0])); (yyval.pval) = nword((yyvsp[0].str), &(yylsp[0]));
(yyval.pval)->next = nword(strdup("1"), &(yylsp[0])); ;} (yyval.pval)->next = nword(strdup("1"), &(yylsp[0])); ;}
break; break;
case 104: case 104:
#line 523 "ael.y" #line 524 "ael.y"
{ {
(yyval.pval) = nword((yyvsp[-2].str), &(yylsp[-2])); (yyval.pval) = nword((yyvsp[-2].str), &(yylsp[-2]));
(yyval.pval)->next = nword((yyvsp[0].str), &(yylsp[0])); ;} (yyval.pval)->next = nword((yyvsp[0].str), &(yylsp[0])); ;}
break; break;
case 105: case 105:
#line 526 "ael.y" #line 527 "ael.y"
{ {
(yyval.pval) = npval2(PV_WORD, &(yylsp[-4]), &(yylsp[-4])); (yyval.pval) = npval2(PV_WORD, &(yylsp[-4]), &(yylsp[-4]));
(yyval.pval)->u1.str = (yyvsp[0].str); (yyval.pval)->u1.str = (yyvsp[0].str); /* XXX must check this */
(yyval.pval)->next = npval2(PV_WORD, &(yylsp[-2]), &(yylsp[-2])); (yyval.pval)->next = npval2(PV_WORD, &(yylsp[-2]), &(yylsp[-2]));
(yyval.pval)->next->u1.str = (yyvsp[-4].str); (yyval.pval)->next->u1.str = (yyvsp[-4].str);
(yyval.pval)->next->next = npval2(PV_WORD, &(yylsp[0]), &(yylsp[0])); (yyval.pval)->next->next = npval2(PV_WORD, &(yylsp[0]), &(yylsp[0]));
@ -2644,7 +2644,7 @@ yyreduce:
break; break;
case 106: case 106:
#line 533 "ael.y" #line 534 "ael.y"
{ {
(yyval.pval) = npval2(PV_WORD, &(yylsp[-2]), &(yylsp[-2])); (yyval.pval) = npval2(PV_WORD, &(yylsp[-2]), &(yylsp[-2]));
(yyval.pval)->u1.str = (yyvsp[0].str); (yyval.pval)->u1.str = (yyvsp[0].str);
@ -2655,7 +2655,7 @@ yyreduce:
break; break;
case 107: case 107:
#line 540 "ael.y" #line 541 "ael.y"
{ {
(yyval.pval) = npval2(PV_WORD, &(yylsp[-4]), &(yylsp[-4])); (yyval.pval) = npval2(PV_WORD, &(yylsp[-4]), &(yylsp[-4]));
(yyval.pval)->u1.str = strdup("default"); (yyval.pval)->u1.str = strdup("default");
@ -2666,7 +2666,7 @@ yyreduce:
break; break;
case 108: case 108:
#line 547 "ael.y" #line 548 "ael.y"
{ {
(yyval.pval) = npval2(PV_WORD, &(yylsp[-2]), &(yylsp[-2])); (yyval.pval) = npval2(PV_WORD, &(yylsp[-2]), &(yylsp[-2]));
(yyval.pval)->u1.str = strdup("default"); (yyval.pval)->u1.str = strdup("default");
@ -2677,12 +2677,12 @@ yyreduce:
break; break;
case 109: case 109:
#line 556 "ael.y" #line 557 "ael.y"
{reset_argcount(parseio->scanner);;} {reset_argcount(parseio->scanner);;}
break; break;
case 110: case 110:
#line 556 "ael.y" #line 557 "ael.y"
{ {
/* XXX original code had @2 but i think we need @5 */ /* XXX original code had @2 but i think we need @5 */
(yyval.pval) = npval2(PV_MACRO_CALL, &(yylsp[-4]), &(yylsp[0])); (yyval.pval) = npval2(PV_MACRO_CALL, &(yylsp[-4]), &(yylsp[0]));
@ -2691,19 +2691,19 @@ yyreduce:
break; break;
case 111: case 111:
#line 561 "ael.y" #line 562 "ael.y"
{ {
(yyval.pval)= npval2(PV_MACRO_CALL, &(yylsp[-2]), &(yylsp[0])); (yyval.pval)= npval2(PV_MACRO_CALL, &(yylsp[-2]), &(yylsp[0]));
(yyval.pval)->u1.str = (yyvsp[-2].str); ;} (yyval.pval)->u1.str = (yyvsp[-2].str); ;}
break; break;
case 112: case 112:
#line 566 "ael.y" #line 567 "ael.y"
{reset_argcount(parseio->scanner);;} {reset_argcount(parseio->scanner);;}
break; break;
case 113: case 113:
#line 566 "ael.y" #line 567 "ael.y"
{ {
if (strcasecmp((yyvsp[-2].str),"goto") == 0) { if (strcasecmp((yyvsp[-2].str),"goto") == 0) {
(yyval.pval)= npval2(PV_GOTO, &(yylsp[-2]), &(yylsp[0])); (yyval.pval)= npval2(PV_GOTO, &(yylsp[-2]), &(yylsp[0]));
@ -2715,7 +2715,7 @@ yyreduce:
break; break;
case 114: case 114:
#line 576 "ael.y" #line 577 "ael.y"
{ {
(yyval.pval) = update_last((yyvsp[-2].pval), &(yylsp[0])); (yyval.pval) = update_last((yyvsp[-2].pval), &(yylsp[0]));
if( (yyval.pval)->type == PV_GOTO ) if( (yyval.pval)->type == PV_GOTO )
@ -2726,57 +2726,54 @@ yyreduce:
break; break;
case 115: case 115:
#line 583 "ael.y" #line 584 "ael.y"
{ (yyval.pval) = update_last((yyvsp[-1].pval), &(yylsp[0])); ;} { (yyval.pval) = update_last((yyvsp[-1].pval), &(yylsp[0])); ;}
break; break;
case 116: case 116:
#line 586 "ael.y" #line 587 "ael.y"
{ (yyval.str) = (yyvsp[0].str) ;} { (yyval.str) = (yyvsp[0].str) ;}
break; break;
case 117: case 117:
#line 587 "ael.y" #line 588 "ael.y"
{ (yyval.str) = strdup(""); ;} { (yyval.str) = strdup(""); ;}
break; break;
case 118: case 118:
#line 590 "ael.y" #line 591 "ael.y"
{ { (yyval.pval) = nword((yyvsp[0].str), &(yylsp[0])); ;}
(yyval.pval)= npval2(PV_WORD, &(yylsp[0]), &(yylsp[0]));
(yyval.pval)->u1.str = (yyvsp[0].str);;}
break; break;
case 119: case 119:
#line 593 "ael.y" #line 592 "ael.y"
{ {
(yyval.pval)= npval(PV_WORD,0/*@1.first_line*/,0/*@1.last_line*/,0/* @1.first_column*/, 0/*@1.last_column*/); (yyval.pval)= npval(PV_WORD,0/*@1.first_line*/,0/*@1.last_line*/,0/* @1.first_column*/, 0/*@1.last_column*/);
(yyval.pval)->u1.str = strdup(""); ;} (yyval.pval)->u1.str = strdup(""); ;}
break; break;
case 120: case 120:
#line 596 "ael.y" #line 595 "ael.y"
{ {
pval *z = npval2(PV_WORD, &(yylsp[0]), &(yylsp[0])); pval *z = nword((yyvsp[0].str), &(yylsp[0]));
(yyval.pval) = (yyvsp[-2].pval); (yyval.pval) = (yyvsp[-2].pval);
linku1((yyvsp[-2].pval),z); linku1((yyvsp[-2].pval),z); ;}
z->u1.str = (yyvsp[0].str);;}
break; break;
case 121: case 121:
#line 603 "ael.y" #line 601 "ael.y"
{(yyval.pval)=(yyvsp[0].pval);;} {(yyval.pval)=(yyvsp[0].pval);;}
break; break;
case 122: case 122:
#line 604 "ael.y" #line 602 "ael.y"
{ if ( (yyvsp[-1].pval) && (yyvsp[0].pval) ) {(yyval.pval)=(yyvsp[-1].pval); linku1((yyval.pval),(yyvsp[0].pval));} { if ( (yyvsp[-1].pval) && (yyvsp[0].pval) ) {(yyval.pval)=(yyvsp[-1].pval); linku1((yyval.pval),(yyvsp[0].pval));}
else if ( (yyvsp[-1].pval) ) {(yyval.pval)=(yyvsp[-1].pval);} else if ( (yyvsp[-1].pval) ) {(yyval.pval)=(yyvsp[-1].pval);}
else if ( (yyvsp[0].pval) ) {(yyval.pval)=(yyvsp[0].pval);} ;} else if ( (yyvsp[0].pval) ) {(yyval.pval)=(yyvsp[0].pval);} ;}
break; break;
case 123: case 123:
#line 609 "ael.y" #line 607 "ael.y"
{ {
(yyval.pval) = npval2(PV_CASE, &(yylsp[-3]), &(yylsp[-1])); /* XXX 3 or 4 ? */ (yyval.pval) = npval2(PV_CASE, &(yylsp[-3]), &(yylsp[-1])); /* XXX 3 or 4 ? */
(yyval.pval)->u1.str = (yyvsp[-2].str); (yyval.pval)->u1.str = (yyvsp[-2].str);
@ -2784,7 +2781,7 @@ yyreduce:
break; break;
case 124: case 124:
#line 613 "ael.y" #line 611 "ael.y"
{ {
(yyval.pval) = npval2(PV_DEFAULT, &(yylsp[-2]), &(yylsp[0])); (yyval.pval) = npval2(PV_DEFAULT, &(yylsp[-2]), &(yylsp[0]));
(yyval.pval)->u1.str = NULL; (yyval.pval)->u1.str = NULL;
@ -2792,7 +2789,7 @@ yyreduce:
break; break;
case 125: case 125:
#line 617 "ael.y" #line 615 "ael.y"
{ {
(yyval.pval) = npval2(PV_PATTERN, &(yylsp[-3]), &(yylsp[0])); /* XXX@3 or @4 ? */ (yyval.pval) = npval2(PV_PATTERN, &(yylsp[-3]), &(yylsp[0])); /* XXX@3 or @4 ? */
(yyval.pval)->u1.str = (yyvsp[-2].str); (yyval.pval)->u1.str = (yyvsp[-2].str);
@ -2800,45 +2797,45 @@ yyreduce:
break; break;
case 126: case 126:
#line 621 "ael.y" #line 619 "ael.y"
{ {
(yyval.pval) = npval2(PV_CASE, &(yylsp[-2]), &(yylsp[0])); (yyval.pval) = npval2(PV_CASE, &(yylsp[-2]), &(yylsp[0]));
(yyval.pval)->u1.str = (yyvsp[-1].str);;} (yyval.pval)->u1.str = (yyvsp[-1].str);;}
break; break;
case 127: case 127:
#line 624 "ael.y" #line 622 "ael.y"
{ {
(yyval.pval) = npval2(PV_DEFAULT, &(yylsp[-1]), &(yylsp[0])); (yyval.pval) = npval2(PV_DEFAULT, &(yylsp[-1]), &(yylsp[0]));
(yyval.pval)->u1.str = NULL;;} (yyval.pval)->u1.str = NULL;;}
break; break;
case 128: case 128:
#line 627 "ael.y" #line 625 "ael.y"
{ {
(yyval.pval) = npval2(PV_PATTERN, &(yylsp[-2]), &(yylsp[0])); (yyval.pval) = npval2(PV_PATTERN, &(yylsp[-2]), &(yylsp[0]));
(yyval.pval)->u1.str = (yyvsp[-1].str);;} (yyval.pval)->u1.str = (yyvsp[-1].str);;}
break; break;
case 129: case 129:
#line 632 "ael.y" #line 630 "ael.y"
{(yyval.pval) = (yyvsp[0].pval);;} {(yyval.pval) = (yyvsp[0].pval);;}
break; break;
case 130: case 130:
#line 633 "ael.y" #line 631 "ael.y"
{ if ( (yyvsp[-1].pval) && (yyvsp[0].pval) ) {(yyval.pval)=(yyvsp[-1].pval); linku1((yyval.pval),(yyvsp[0].pval));} { if ( (yyvsp[-1].pval) && (yyvsp[0].pval) ) {(yyval.pval)=(yyvsp[-1].pval); linku1((yyval.pval),(yyvsp[0].pval));}
else if ( (yyvsp[-1].pval) ) {(yyval.pval)=(yyvsp[-1].pval);} else if ( (yyvsp[-1].pval) ) {(yyval.pval)=(yyvsp[-1].pval);}
else if ( (yyvsp[0].pval) ) {(yyval.pval)=(yyvsp[0].pval);} ;} else if ( (yyvsp[0].pval) ) {(yyval.pval)=(yyvsp[0].pval);} ;}
break; break;
case 131: case 131:
#line 638 "ael.y" #line 636 "ael.y"
{(yyval.pval)=(yyvsp[0].pval);;} {(yyval.pval)=(yyvsp[0].pval);;}
break; break;
case 132: case 132:
#line 639 "ael.y" #line 637 "ael.y"
{ {
(yyval.pval) = npval2(PV_CATCH, &(yylsp[-4]), &(yylsp[0])); (yyval.pval) = npval2(PV_CATCH, &(yylsp[-4]), &(yylsp[0]));
(yyval.pval)->u1.str = (yyvsp[-3].str); (yyval.pval)->u1.str = (yyvsp[-3].str);
@ -2846,38 +2843,38 @@ yyreduce:
break; break;
case 133: case 133:
#line 645 "ael.y" #line 643 "ael.y"
{ {
(yyval.pval) = npval2(PV_SWITCHES, &(yylsp[-1]), &(yylsp[0])); (yyval.pval) = npval2(PV_SWITCHES, &(yylsp[-1]), &(yylsp[0]));
(yyval.pval)->u1.list = (yyvsp[0].pval); ;} (yyval.pval)->u1.list = (yyvsp[0].pval); ;}
break; break;
case 134: case 134:
#line 650 "ael.y" #line 648 "ael.y"
{ {
(yyval.pval) = npval2(PV_ESWITCHES, &(yylsp[-1]), &(yylsp[0])); (yyval.pval) = npval2(PV_ESWITCHES, &(yylsp[-1]), &(yylsp[0]));
(yyval.pval)->u1.list = (yyvsp[0].pval); ;} (yyval.pval)->u1.list = (yyvsp[0].pval); ;}
break; break;
case 135: case 135:
#line 655 "ael.y" #line 653 "ael.y"
{ (yyval.pval) = (yyvsp[-1].pval); ;} { (yyval.pval) = (yyvsp[-1].pval); ;}
break; break;
case 136: case 136:
#line 656 "ael.y" #line 654 "ael.y"
{ (yyval.pval) = NULL; ;} { (yyval.pval) = NULL; ;}
break; break;
case 137: case 137:
#line 659 "ael.y" #line 657 "ael.y"
{ {
(yyval.pval) = npval2(PV_WORD, &(yylsp[-1]), &(yylsp[0])); (yyval.pval) = npval2(PV_WORD, &(yylsp[-1]), &(yylsp[0]));
(yyval.pval)->u1.str = (yyvsp[-1].str);;} (yyval.pval)->u1.str = (yyvsp[-1].str);;}
break; break;
case 138: case 138:
#line 662 "ael.y" #line 660 "ael.y"
{ {
pval *z = npval2(PV_WORD, &(yylsp[-1]), &(yylsp[0])); pval *z = npval2(PV_WORD, &(yylsp[-1]), &(yylsp[0]));
z->u1.str = (yyvsp[-1].str); z->u1.str = (yyvsp[-1].str);
@ -2886,19 +2883,19 @@ yyreduce:
break; break;
case 139: case 139:
#line 667 "ael.y" #line 665 "ael.y"
{(yyval.pval)=(yyvsp[-1].pval);;} {(yyval.pval)=(yyvsp[-1].pval);;}
break; break;
case 140: case 140:
#line 670 "ael.y" #line 668 "ael.y"
{ {
(yyval.pval) = npval2(PV_WORD, &(yylsp[-1]), &(yylsp[0])); (yyval.pval) = npval2(PV_WORD, &(yylsp[-1]), &(yylsp[0]));
(yyval.pval)->u1.str = (yyvsp[-1].str);;} (yyval.pval)->u1.str = (yyvsp[-1].str);;}
break; break;
case 141: case 141:
#line 674 "ael.y" #line 672 "ael.y"
{ {
(yyval.pval) = npval2(PV_WORD, &(yylsp[-13]), &(yylsp[-12])); (yyval.pval) = npval2(PV_WORD, &(yylsp[-13]), &(yylsp[-12]));
(yyval.pval)->u1.str = (yyvsp[-13].str); (yyval.pval)->u1.str = (yyvsp[-13].str);
@ -2907,35 +2904,28 @@ yyreduce:
free((yyvsp[-11].str)); free((yyvsp[-11].str));
free((yyvsp[-9].str)); free((yyvsp[-9].str));
free((yyvsp[-7].str)); free((yyvsp[-7].str));
(yyval.pval)->u2.arglist->next = npval2(PV_WORD, &(yylsp[-5]), &(yylsp[-5])); (yyval.pval)->u2.arglist->next = nword((yyvsp[-5].str), &(yylsp[-5]));
(yyval.pval)->u2.arglist->next->u1.str = (yyvsp[-5].str); (yyval.pval)->u2.arglist->next->next = nword((yyvsp[-3].str), &(yylsp[-3]));
(yyval.pval)->u2.arglist->next->next = npval2(PV_WORD, &(yylsp[-3]), &(yylsp[-3])); (yyval.pval)->u2.arglist->next->next->next = nword((yyvsp[-1].str), &(yylsp[-1]));
(yyval.pval)->u2.arglist->next->next->u1.str = (yyvsp[-3].str);
(yyval.pval)->u2.arglist->next->next->next = npval2(PV_WORD, &(yylsp[-1]), &(yylsp[-1]));
(yyval.pval)->u2.arglist->next->next->next->u1.str = (yyvsp[-1].str);
prev_word=0; prev_word=0;
;} ;}
break; break;
case 142: case 142:
#line 690 "ael.y" #line 685 "ael.y"
{ {
(yyval.pval) = npval2(PV_WORD, &(yylsp[-9]), &(yylsp[-8])); (yyval.pval) = npval2(PV_WORD, &(yylsp[-9]), &(yylsp[-8]));
(yyval.pval)->u1.str = (yyvsp[-9].str); (yyval.pval)->u1.str = (yyvsp[-9].str);
(yyval.pval)->u2.arglist = npval2(PV_WORD, &(yylsp[-7]), &(yylsp[-7])); (yyval.pval)->u2.arglist = nword((yyvsp[-7].str), &(yylsp[-7]));
(yyval.pval)->u2.arglist->u1.str = (yyvsp[-7].str); (yyval.pval)->u2.arglist->next = nword((yyvsp[-5].str), &(yylsp[-5]));
(yyval.pval)->u2.arglist->next = npval2(PV_WORD, &(yylsp[-5]), &(yylsp[-5])); (yyval.pval)->u2.arglist->next->next = nword((yyvsp[-3].str), &(yylsp[-3]));
(yyval.pval)->u2.arglist->next->u1.str = (yyvsp[-5].str); (yyval.pval)->u2.arglist->next->next->next = nword((yyvsp[-1].str), &(yylsp[-1]));
(yyval.pval)->u2.arglist->next->next = npval2(PV_WORD, &(yylsp[-3]), &(yylsp[-3]));
(yyval.pval)->u2.arglist->next->next->u1.str = (yyvsp[-3].str);
(yyval.pval)->u2.arglist->next->next->next = npval2(PV_WORD, &(yylsp[-1]), &(yylsp[-1]));
(yyval.pval)->u2.arglist->next->next->next->u1.str = (yyvsp[-1].str);
prev_word=0; prev_word=0;
;} ;}
break; break;
case 143: case 143:
#line 703 "ael.y" #line 694 "ael.y"
{ {
pval *z = npval2(PV_WORD, &(yylsp[-1]), &(yylsp[0])); /* XXX don't we need @1-@3 ?*/ pval *z = npval2(PV_WORD, &(yylsp[-1]), &(yylsp[0])); /* XXX don't we need @1-@3 ?*/
(yyval.pval)=(yyvsp[-2].pval); (yyval.pval)=(yyvsp[-2].pval);
@ -2944,7 +2934,7 @@ yyreduce:
break; break;
case 144: case 144:
#line 709 "ael.y" #line 700 "ael.y"
{ {
pval *z = npval2(PV_WORD, &(yylsp[-13]), &(yylsp[-12])); pval *z = npval2(PV_WORD, &(yylsp[-13]), &(yylsp[-12]));
(yyval.pval)=(yyvsp[-14].pval); z->u1.str = (yyvsp[-13].str); (yyval.pval)=(yyvsp[-14].pval); z->u1.str = (yyvsp[-13].str);
@ -2954,59 +2944,53 @@ yyreduce:
free((yyvsp[-11].str)); free((yyvsp[-11].str));
free((yyvsp[-9].str)); free((yyvsp[-9].str));
free((yyvsp[-7].str)); free((yyvsp[-7].str));
z->u2.arglist->next = npval2(PV_WORD, &(yylsp[-5]), &(yylsp[-5])); z->u2.arglist->next = nword((yyvsp[-5].str), &(yylsp[-5]));
z->u2.arglist->next->u1.str = (yyvsp[-5].str); z->u2.arglist->next->next = nword((yyvsp[-3].str), &(yylsp[-3]));
z->u2.arglist->next->next = npval2(PV_WORD, &(yylsp[-3]), &(yylsp[-3])); z->u2.arglist->next->next->next = nword((yyvsp[-1].str), &(yylsp[-1]));
z->u2.arglist->next->next->u1.str = (yyvsp[-3].str);
z->u2.arglist->next->next->next = npval2(PV_WORD, &(yylsp[-1]), &(yylsp[-1]));
z->u2.arglist->next->next->next->u1.str = (yyvsp[-1].str);
prev_word=0; prev_word=0;
;} ;}
break; break;
case 145: case 145:
#line 726 "ael.y" #line 714 "ael.y"
{ {
pval *z = npval2(PV_WORD, &(yylsp[-9]), &(yylsp[-8])); pval *z = npval2(PV_WORD, &(yylsp[-9]), &(yylsp[-8]));
(yyval.pval)=(yyvsp[-10].pval); (yyval.pval)=(yyvsp[-10].pval);
linku1((yyval.pval),z); linku1((yyval.pval),z);
(yyval.pval)->u2.arglist->u1.str = (yyvsp[-7].str); (yyval.pval)->u2.arglist->u1.str = (yyvsp[-7].str); /* XXX maybe too early ? */
z->u1.str = (yyvsp[-9].str); z->u1.str = (yyvsp[-9].str);
z->u2.arglist = npval2(PV_WORD, &(yylsp[-7]), &(yylsp[-7])); /* XXX is this correct ? */ z->u2.arglist = npval2(PV_WORD, &(yylsp[-7]), &(yylsp[-7])); /* XXX is this correct ? */
z->u2.arglist->next = npval2(PV_WORD, &(yylsp[-5]), &(yylsp[-5])); z->u2.arglist->next = nword((yyvsp[-5].str), &(yylsp[-5]));
z->u2.arglist->next->u1.str = (yyvsp[-5].str); z->u2.arglist->next->next = nword((yyvsp[-3].str), &(yylsp[-3]));
z->u2.arglist->next->next = npval2(PV_WORD, &(yylsp[-3]), &(yylsp[-3])); z->u2.arglist->next->next->next = nword((yyvsp[-1].str), &(yylsp[-1]));
z->u2.arglist->next->next->u1.str = (yyvsp[-3].str);
z->u2.arglist->next->next->next = npval2(PV_WORD, &(yylsp[-1]), &(yylsp[-1]));
z->u2.arglist->next->next->next->u1.str = (yyvsp[-1].str);
prev_word=0; prev_word=0;
;} ;}
break; break;
case 146: case 146:
#line 741 "ael.y" #line 726 "ael.y"
{(yyval.pval)=(yyvsp[-1].pval);;} {(yyval.pval)=(yyvsp[-1].pval);;}
break; break;
case 147: case 147:
#line 744 "ael.y" #line 729 "ael.y"
{ (yyval.str) = (yyvsp[0].str);;} { (yyval.str) = (yyvsp[0].str);;}
break; break;
case 148: case 148:
#line 745 "ael.y" #line 730 "ael.y"
{(yyval.str)=strdup("default");;} {(yyval.str)=strdup("default");;}
break; break;
case 149: case 149:
#line 748 "ael.y" #line 733 "ael.y"
{ {
(yyval.pval) = npval2(PV_INCLUDES, &(yylsp[-3]), &(yylsp[0])); (yyval.pval) = npval2(PV_INCLUDES, &(yylsp[-3]), &(yylsp[0]));
(yyval.pval)->u1.list = (yyvsp[-1].pval);;} (yyval.pval)->u1.list = (yyvsp[-1].pval);;}
break; break;
case 150: case 150:
#line 751 "ael.y" #line 736 "ael.y"
{ {
(yyval.pval) = npval2(PV_INCLUDES, &(yylsp[-2]), &(yylsp[0]));;} (yyval.pval) = npval2(PV_INCLUDES, &(yylsp[-2]), &(yylsp[0]));;}
break; break;
@ -3016,7 +3000,7 @@ yyreduce:
} }
/* Line 1126 of yacc.c. */ /* Line 1126 of yacc.c. */
#line 3020 "ael.tab.c" #line 3004 "ael.tab.c"
yyvsp -= yylen; yyvsp -= yylen;
yyssp -= yylen; yyssp -= yylen;
@ -3291,7 +3275,7 @@ yyreturn:
} }
#line 756 "ael.y" #line 741 "ael.y"
static char *token_equivs1[] = static char *token_equivs1[] =

@ -517,6 +517,7 @@ target : goto_word { $$ = nword($1, &@1); }
$$->next->next = nword($5, &@5); } $$->next->next = nword($5, &@5); }
; ;
/* XXX please document the form of jumptarget */
jumptarget : goto_word { jumptarget : goto_word {
$$ = nword($1, &@1); $$ = nword($1, &@1);
$$->next = nword(strdup("1"), &@1); } /* jump extension[,priority][@context] */ $$->next = nword(strdup("1"), &@1); } /* jump extension[,priority][@context] */
@ -525,7 +526,7 @@ jumptarget : goto_word {
$$->next = nword($3, &@3); } $$->next = nword($3, &@3); }
| goto_word COMMA word AT word { | goto_word COMMA word AT word {
$$ = npval2(PV_WORD, &@1, &@1); $$ = npval2(PV_WORD, &@1, &@1);
$$->u1.str = $5; $$->u1.str = $5; /* XXX must check this */
$$->next = npval2(PV_WORD, &@3, &@3); $$->next = npval2(PV_WORD, &@3, &@3);
$$->next->u1.str = $1; $$->next->u1.str = $1;
$$->next->next = npval2(PV_WORD, &@5, &@5); $$->next->next = npval2(PV_WORD, &@5, &@5);
@ -587,17 +588,14 @@ opt_word : word { $$ = $1 }
| { $$ = strdup(""); } | { $$ = strdup(""); }
; ;
eval_arglist : word_list { eval_arglist : word_list { $$ = nword($1, &@1); }
$$= npval2(PV_WORD, &@1, &@1);
$$->u1.str = $1;}
| /*nothing! */ { | /*nothing! */ {
$$= npval(PV_WORD,0/*@1.first_line*/,0/*@1.last_line*/,0/* @1.first_column*/, 0/*@1.last_column*/); $$= npval(PV_WORD,0/*@1.first_line*/,0/*@1.last_line*/,0/* @1.first_column*/, 0/*@1.last_column*/);
$$->u1.str = strdup(""); } $$->u1.str = strdup(""); }
| eval_arglist COMMA opt_word { | eval_arglist COMMA opt_word {
pval *z = npval2(PV_WORD, &@3, &@3); pval *z = nword($3, &@3);
$$ = $1; $$ = $1;
linku1($1,z); linku1($1,z); }
z->u1.str = $3;}
; ;
case_statements: case_statement {$$=$1;} case_statements: case_statement {$$=$1;}
@ -679,25 +677,18 @@ includeslist : includedname SEMI {
free($3); free($3);
free($5); free($5);
free($7); free($7);
$$->u2.arglist->next = npval2(PV_WORD, &@9, &@9); $$->u2.arglist->next = nword($9, &@9);
$$->u2.arglist->next->u1.str = $9; $$->u2.arglist->next->next = nword($11, &@11);
$$->u2.arglist->next->next = npval2(PV_WORD, &@11, &@11); $$->u2.arglist->next->next->next = nword($13, &@13);
$$->u2.arglist->next->next->u1.str = $11;
$$->u2.arglist->next->next->next = npval2(PV_WORD, &@13, &@13);
$$->u2.arglist->next->next->next->u1.str = $13;
prev_word=0; prev_word=0;
} }
| includedname BAR word BAR word3_list BAR word3_list BAR word3_list SEMI { | includedname BAR word BAR word3_list BAR word3_list BAR word3_list SEMI {
$$ = npval2(PV_WORD, &@1, &@2); $$ = npval2(PV_WORD, &@1, &@2);
$$->u1.str = $1; $$->u1.str = $1;
$$->u2.arglist = npval2(PV_WORD, &@3, &@3); $$->u2.arglist = nword($3, &@3);
$$->u2.arglist->u1.str = $3; $$->u2.arglist->next = nword($5, &@5);
$$->u2.arglist->next = npval2(PV_WORD, &@5, &@5); $$->u2.arglist->next->next = nword($7, &@7);
$$->u2.arglist->next->u1.str = $5; $$->u2.arglist->next->next->next = nword($9, &@9);
$$->u2.arglist->next->next = npval2(PV_WORD, &@7, &@7);
$$->u2.arglist->next->next->u1.str = $7;
$$->u2.arglist->next->next->next = npval2(PV_WORD, &@9, &@9);
$$->u2.arglist->next->next->next->u1.str = $9;
prev_word=0; prev_word=0;
} }
| includeslist includedname SEMI { | includeslist includedname SEMI {
@ -715,27 +706,21 @@ includeslist : includedname SEMI {
free($4); free($4);
free($6); free($6);
free($8); free($8);
z->u2.arglist->next = npval2(PV_WORD, &@10, &@10); z->u2.arglist->next = nword($10, &@10);
z->u2.arglist->next->u1.str = $10; z->u2.arglist->next->next = nword($12, &@12);
z->u2.arglist->next->next = npval2(PV_WORD, &@12, &@12); z->u2.arglist->next->next->next = nword($14, &@14);
z->u2.arglist->next->next->u1.str = $12;
z->u2.arglist->next->next->next = npval2(PV_WORD, &@14, &@14);
z->u2.arglist->next->next->next->u1.str = $14;
prev_word=0; prev_word=0;
} }
| includeslist includedname BAR word BAR word3_list BAR word3_list BAR word3_list SEMI { | includeslist includedname BAR word BAR word3_list BAR word3_list BAR word3_list SEMI {
pval *z = npval2(PV_WORD, &@2, &@3); pval *z = npval2(PV_WORD, &@2, &@3);
$$=$1; $$=$1;
linku1($$,z); linku1($$,z);
$$->u2.arglist->u1.str = $4; $$->u2.arglist->u1.str = $4; /* XXX maybe too early ? */
z->u1.str = $2; z->u1.str = $2;
z->u2.arglist = npval2(PV_WORD, &@4, &@4); /* XXX is this correct ? */ z->u2.arglist = npval2(PV_WORD, &@4, &@4); /* XXX is this correct ? */
z->u2.arglist->next = npval2(PV_WORD, &@6, &@6); z->u2.arglist->next = nword($6, &@6);
z->u2.arglist->next->u1.str = $6; z->u2.arglist->next->next = nword($8, &@8);
z->u2.arglist->next->next = npval2(PV_WORD, &@8, &@8); z->u2.arglist->next->next->next = nword($10, &@10);
z->u2.arglist->next->next->u1.str = $8;
z->u2.arglist->next->next->next = npval2(PV_WORD, &@10, &@10);
z->u2.arglist->next->next->next->u1.str = $10;
prev_word=0; prev_word=0;
} }
| includeslist error {$$=$1;} | includeslist error {$$=$1;}

Loading…
Cancel
Save