Regenerate flex/bison files.

This commit is contained in:
Daniel Buckmaster 2015-01-01 10:33:50 +11:00
parent 5a66f00697
commit dd9e416b00

View file

@ -332,12 +332,12 @@ static const short yyrline[] = { 0,
393, 395, 397, 399, 401, 403, 405, 407, 409, 411, 393, 395, 397, 399, 401, 403, 405, 407, 409, 411,
413, 415, 417, 419, 421, 423, 425, 427, 429, 431, 413, 415, 417, 419, 421, 423, 425, 427, 429, 431,
433, 435, 437, 439, 441, 443, 445, 447, 449, 451, 433, 435, 437, 439, 441, 443, 445, 447, 449, 451,
453, 455, 457, 459, 475, 477, 482, 484, 489, 491, 453, 455, 457, 459, 477, 479, 484, 486, 491, 493,
496, 498, 500, 502, 504, 506, 508, 510, 512, 514, 498, 500, 502, 504, 506, 508, 510, 512, 514, 516,
516, 518, 523, 525, 527, 529, 531, 533, 535, 537, 518, 520, 525, 527, 529, 531, 533, 535, 537, 539,
539, 541, 546, 548, 550, 555, 557, 562, 564, 569, 541, 543, 548, 550, 552, 557, 559, 564, 566, 571,
571, 576, 578, 583, 585, 590, 592, 594, 596, 598, 573, 578, 580, 585, 587, 592, 594, 596, 598, 600,
603, 605 605, 607
}; };
static const char * const yytname[] = { "$","error","$undefined.","rwDEFINE", static const char * const yytname[] = { "$","error","$undefined.","rwDEFINE",
@ -2042,209 +2042,211 @@ case 113:
break;} break;}
case 114: case 114:
#line 460 "cmdgram.y" #line 460 "cmdgram.y"
{ {
String fnname = String("__anonymous_function_" + String::ToString(gAnonFunctionID++)); const U32 bufLen = 64;
StringTableEntry afnName = StringTable->insert(fnname.c_str()); UTF8 buffer[bufLen];
StmtNode *fndef = FunctionDeclStmtNode::alloc(yyvsp[-6].i.lineNumber, afnName, NULL, yyvsp[-4].var, yyvsp[-1].stmt); dSprintf(buffer, bufLen, "__anonymous_function%d", gAnonFunctionID++);
StringTableEntry fName = StringTable->insert(buffer);
StmtNode *fndef = FunctionDeclStmtNode::alloc(yyvsp[-6].i.lineNumber, fName, NULL, yyvsp[-4].var, yyvsp[-1].stmt);
if(!gAnonFunctionList) if(!gAnonFunctionList)
gAnonFunctionList = fndef; gAnonFunctionList = fndef;
else else
gAnonFunctionList->append(fndef); gAnonFunctionList->append(fndef);
yyval.expr = StrConstNode::alloc( yyvsp[-6].i.lineNumber, (UTF8*)fnname.utf8(), false ); yyval.expr = StrConstNode::alloc( yyvsp[-6].i.lineNumber, (UTF8*)fName, false );
; ;
break;} break;}
case 115: case 115:
#line 476 "cmdgram.y" #line 478 "cmdgram.y"
{ yyval.slot.lineNumber = yyvsp[-2].expr->dbgLineNumber; yyval.slot.object = yyvsp[-2].expr; yyval.slot.slotName = yyvsp[0].s.value; yyval.slot.array = NULL; ; { yyval.slot.lineNumber = yyvsp[-2].expr->dbgLineNumber; yyval.slot.object = yyvsp[-2].expr; yyval.slot.slotName = yyvsp[0].s.value; yyval.slot.array = NULL; ;
break;} break;}
case 116: case 116:
#line 478 "cmdgram.y" #line 480 "cmdgram.y"
{ yyval.slot.lineNumber = yyvsp[-5].expr->dbgLineNumber; yyval.slot.object = yyvsp[-5].expr; yyval.slot.slotName = yyvsp[-3].s.value; yyval.slot.array = yyvsp[-1].expr; ; { yyval.slot.lineNumber = yyvsp[-5].expr->dbgLineNumber; yyval.slot.object = yyvsp[-5].expr; yyval.slot.slotName = yyvsp[-3].s.value; yyval.slot.array = yyvsp[-1].expr; ;
break;} break;}
case 117: case 117:
#line 483 "cmdgram.y" #line 485 "cmdgram.y"
{ yyval.intslot.lineNumber = yyvsp[-2].expr->dbgLineNumber; yyval.intslot.object = yyvsp[-2].expr; yyval.intslot.slotExpr = yyvsp[0].expr; yyval.intslot.recurse = false; ; { yyval.intslot.lineNumber = yyvsp[-2].expr->dbgLineNumber; yyval.intslot.object = yyvsp[-2].expr; yyval.intslot.slotExpr = yyvsp[0].expr; yyval.intslot.recurse = false; ;
break;} break;}
case 118: case 118:
#line 485 "cmdgram.y" #line 487 "cmdgram.y"
{ yyval.intslot.lineNumber = yyvsp[-2].expr->dbgLineNumber; yyval.intslot.object = yyvsp[-2].expr; yyval.intslot.slotExpr = yyvsp[0].expr; yyval.intslot.recurse = true; ; { yyval.intslot.lineNumber = yyvsp[-2].expr->dbgLineNumber; yyval.intslot.object = yyvsp[-2].expr; yyval.intslot.slotExpr = yyvsp[0].expr; yyval.intslot.recurse = true; ;
break;} break;}
case 119: case 119:
#line 490 "cmdgram.y" #line 492 "cmdgram.y"
{ yyval.expr = ConstantNode::alloc( yyvsp[0].s.lineNumber, yyvsp[0].s.value ); ; { yyval.expr = ConstantNode::alloc( yyvsp[0].s.lineNumber, yyvsp[0].s.value ); ;
break;} break;}
case 120: case 120:
#line 492 "cmdgram.y" #line 494 "cmdgram.y"
{ yyval.expr = yyvsp[-1].expr; ; { yyval.expr = yyvsp[-1].expr; ;
break;} break;}
case 121: case 121:
#line 497 "cmdgram.y" #line 499 "cmdgram.y"
{ yyval.asn.lineNumber = yyvsp[0].i.lineNumber; yyval.asn.token = '+'; yyval.asn.expr = FloatNode::alloc( yyvsp[0].i.lineNumber, 1 ); ; { yyval.asn.lineNumber = yyvsp[0].i.lineNumber; yyval.asn.token = '+'; yyval.asn.expr = FloatNode::alloc( yyvsp[0].i.lineNumber, 1 ); ;
break;} break;}
case 122: case 122:
#line 499 "cmdgram.y" #line 501 "cmdgram.y"
{ yyval.asn.lineNumber = yyvsp[0].i.lineNumber; yyval.asn.token = '-'; yyval.asn.expr = FloatNode::alloc( yyvsp[0].i.lineNumber, 1 ); ; { yyval.asn.lineNumber = yyvsp[0].i.lineNumber; yyval.asn.token = '-'; yyval.asn.expr = FloatNode::alloc( yyvsp[0].i.lineNumber, 1 ); ;
break;} break;}
case 123: case 123:
#line 501 "cmdgram.y" #line 503 "cmdgram.y"
{ yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '+'; yyval.asn.expr = yyvsp[0].expr; ; { yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '+'; yyval.asn.expr = yyvsp[0].expr; ;
break;} break;}
case 124: case 124:
#line 503 "cmdgram.y" #line 505 "cmdgram.y"
{ yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '-'; yyval.asn.expr = yyvsp[0].expr; ; { yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '-'; yyval.asn.expr = yyvsp[0].expr; ;
break;} break;}
case 125: case 125:
#line 505 "cmdgram.y" #line 507 "cmdgram.y"
{ yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '*'; yyval.asn.expr = yyvsp[0].expr; ; { yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '*'; yyval.asn.expr = yyvsp[0].expr; ;
break;} break;}
case 126: case 126:
#line 507 "cmdgram.y" #line 509 "cmdgram.y"
{ yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '/'; yyval.asn.expr = yyvsp[0].expr; ; { yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '/'; yyval.asn.expr = yyvsp[0].expr; ;
break;} break;}
case 127: case 127:
#line 509 "cmdgram.y" #line 511 "cmdgram.y"
{ yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '%'; yyval.asn.expr = yyvsp[0].expr; ; { yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '%'; yyval.asn.expr = yyvsp[0].expr; ;
break;} break;}
case 128: case 128:
#line 511 "cmdgram.y" #line 513 "cmdgram.y"
{ yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '&'; yyval.asn.expr = yyvsp[0].expr; ; { yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '&'; yyval.asn.expr = yyvsp[0].expr; ;
break;} break;}
case 129: case 129:
#line 513 "cmdgram.y" #line 515 "cmdgram.y"
{ yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '^'; yyval.asn.expr = yyvsp[0].expr; ; { yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '^'; yyval.asn.expr = yyvsp[0].expr; ;
break;} break;}
case 130: case 130:
#line 515 "cmdgram.y" #line 517 "cmdgram.y"
{ yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '|'; yyval.asn.expr = yyvsp[0].expr; ; { yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = '|'; yyval.asn.expr = yyvsp[0].expr; ;
break;} break;}
case 131: case 131:
#line 517 "cmdgram.y" #line 519 "cmdgram.y"
{ yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = opSHL; yyval.asn.expr = yyvsp[0].expr; ; { yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = opSHL; yyval.asn.expr = yyvsp[0].expr; ;
break;} break;}
case 132: case 132:
#line 519 "cmdgram.y" #line 521 "cmdgram.y"
{ yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = opSHR; yyval.asn.expr = yyvsp[0].expr; ; { yyval.asn.lineNumber = yyvsp[-1].i.lineNumber; yyval.asn.token = opSHR; yyval.asn.expr = yyvsp[0].expr; ;
break;} break;}
case 133: case 133:
#line 524 "cmdgram.y"
{ yyval.expr = yyvsp[0].expr; ;
break;}
case 134:
#line 526 "cmdgram.y" #line 526 "cmdgram.y"
{ yyval.expr = yyvsp[0].expr; ; { yyval.expr = yyvsp[0].expr; ;
break;} break;}
case 135: case 134:
#line 528 "cmdgram.y" #line 528 "cmdgram.y"
{ yyval.expr = yyvsp[0].expr; ;
break;}
case 135:
#line 530 "cmdgram.y"
{ yyval.expr = yyvsp[0].od; ; { yyval.expr = yyvsp[0].od; ;
break;} break;}
case 136: case 136:
#line 530 "cmdgram.y" #line 532 "cmdgram.y"
{ yyval.expr = AssignExprNode::alloc( yyvsp[-2].s.lineNumber, yyvsp[-2].s.value, NULL, yyvsp[0].expr); ; { yyval.expr = AssignExprNode::alloc( yyvsp[-2].s.lineNumber, yyvsp[-2].s.value, NULL, yyvsp[0].expr); ;
break;} break;}
case 137: case 137:
#line 532 "cmdgram.y" #line 534 "cmdgram.y"
{ yyval.expr = AssignExprNode::alloc( yyvsp[-5].s.lineNumber, yyvsp[-5].s.value, yyvsp[-3].expr, yyvsp[0].expr); ; { yyval.expr = AssignExprNode::alloc( yyvsp[-5].s.lineNumber, yyvsp[-5].s.value, yyvsp[-3].expr, yyvsp[0].expr); ;
break;} break;}
case 138: case 138:
#line 534 "cmdgram.y" #line 536 "cmdgram.y"
{ yyval.expr = AssignOpExprNode::alloc( yyvsp[-1].s.lineNumber, yyvsp[-1].s.value, NULL, yyvsp[0].asn.expr, yyvsp[0].asn.token); ; { yyval.expr = AssignOpExprNode::alloc( yyvsp[-1].s.lineNumber, yyvsp[-1].s.value, NULL, yyvsp[0].asn.expr, yyvsp[0].asn.token); ;
break;} break;}
case 139: case 139:
#line 536 "cmdgram.y" #line 538 "cmdgram.y"
{ yyval.expr = AssignOpExprNode::alloc( yyvsp[-4].s.lineNumber, yyvsp[-4].s.value, yyvsp[-2].expr, yyvsp[0].asn.expr, yyvsp[0].asn.token); ; { yyval.expr = AssignOpExprNode::alloc( yyvsp[-4].s.lineNumber, yyvsp[-4].s.value, yyvsp[-2].expr, yyvsp[0].asn.expr, yyvsp[0].asn.token); ;
break;} break;}
case 140: case 140:
#line 538 "cmdgram.y" #line 540 "cmdgram.y"
{ yyval.expr = SlotAssignOpNode::alloc( yyvsp[-1].slot.lineNumber, yyvsp[-1].slot.object, yyvsp[-1].slot.slotName, yyvsp[-1].slot.array, yyvsp[0].asn.token, yyvsp[0].asn.expr); ; { yyval.expr = SlotAssignOpNode::alloc( yyvsp[-1].slot.lineNumber, yyvsp[-1].slot.object, yyvsp[-1].slot.slotName, yyvsp[-1].slot.array, yyvsp[0].asn.token, yyvsp[0].asn.expr); ;
break;} break;}
case 141: case 141:
#line 540 "cmdgram.y" #line 542 "cmdgram.y"
{ yyval.expr = SlotAssignNode::alloc( yyvsp[-2].slot.lineNumber, yyvsp[-2].slot.object, yyvsp[-2].slot.array, yyvsp[-2].slot.slotName, yyvsp[0].expr); ; { yyval.expr = SlotAssignNode::alloc( yyvsp[-2].slot.lineNumber, yyvsp[-2].slot.object, yyvsp[-2].slot.array, yyvsp[-2].slot.slotName, yyvsp[0].expr); ;
break;} break;}
case 142: case 142:
#line 542 "cmdgram.y" #line 544 "cmdgram.y"
{ yyval.expr = SlotAssignNode::alloc( yyvsp[-4].slot.lineNumber, yyvsp[-4].slot.object, yyvsp[-4].slot.array, yyvsp[-4].slot.slotName, yyvsp[-1].expr); ; { yyval.expr = SlotAssignNode::alloc( yyvsp[-4].slot.lineNumber, yyvsp[-4].slot.object, yyvsp[-4].slot.array, yyvsp[-4].slot.slotName, yyvsp[-1].expr); ;
break;} break;}
case 143: case 143:
#line 547 "cmdgram.y" #line 549 "cmdgram.y"
{ yyval.expr = FuncCallExprNode::alloc( yyvsp[-3].s.lineNumber, yyvsp[-3].s.value, NULL, yyvsp[-1].expr, false); ; { yyval.expr = FuncCallExprNode::alloc( yyvsp[-3].s.lineNumber, yyvsp[-3].s.value, NULL, yyvsp[-1].expr, false); ;
break;} break;}
case 144: case 144:
#line 549 "cmdgram.y" #line 551 "cmdgram.y"
{ yyval.expr = FuncCallExprNode::alloc( yyvsp[-5].s.lineNumber, yyvsp[-3].s.value, yyvsp[-5].s.value, yyvsp[-1].expr, false); ; { yyval.expr = FuncCallExprNode::alloc( yyvsp[-5].s.lineNumber, yyvsp[-3].s.value, yyvsp[-5].s.value, yyvsp[-1].expr, false); ;
break;} break;}
case 145: case 145:
#line 551 "cmdgram.y" #line 553 "cmdgram.y"
{ yyvsp[-5].expr->append(yyvsp[-1].expr); yyval.expr = FuncCallExprNode::alloc( yyvsp[-5].expr->dbgLineNumber, yyvsp[-3].s.value, NULL, yyvsp[-5].expr, true); ; { yyvsp[-5].expr->append(yyvsp[-1].expr); yyval.expr = FuncCallExprNode::alloc( yyvsp[-5].expr->dbgLineNumber, yyvsp[-3].s.value, NULL, yyvsp[-5].expr, true); ;
break;} break;}
case 146: case 146:
#line 556 "cmdgram.y" #line 558 "cmdgram.y"
{ yyval.expr = AssertCallExprNode::alloc( yyvsp[-3].i.lineNumber, yyvsp[-1].expr, NULL ); ; { yyval.expr = AssertCallExprNode::alloc( yyvsp[-3].i.lineNumber, yyvsp[-1].expr, NULL ); ;
break;} break;}
case 147: case 147:
#line 558 "cmdgram.y" #line 560 "cmdgram.y"
{ yyval.expr = AssertCallExprNode::alloc( yyvsp[-5].i.lineNumber, yyvsp[-3].expr, yyvsp[-1].str.value ); ; { yyval.expr = AssertCallExprNode::alloc( yyvsp[-5].i.lineNumber, yyvsp[-3].expr, yyvsp[-1].str.value ); ;
break;} break;}
case 148: case 148:
#line 563 "cmdgram.y" #line 565 "cmdgram.y"
{ yyval.expr = NULL; ; { yyval.expr = NULL; ;
break;} break;}
case 149: case 149:
#line 565 "cmdgram.y" #line 567 "cmdgram.y"
{ yyval.expr = yyvsp[0].expr; ; { yyval.expr = yyvsp[0].expr; ;
break;} break;}
case 150: case 150:
#line 570 "cmdgram.y" #line 572 "cmdgram.y"
{ yyval.expr = yyvsp[0].expr; ; { yyval.expr = yyvsp[0].expr; ;
break;} break;}
case 151: case 151:
#line 572 "cmdgram.y" #line 574 "cmdgram.y"
{ (yyvsp[-2].expr)->append(yyvsp[0].expr); yyval.expr = yyvsp[-2].expr; ; { (yyvsp[-2].expr)->append(yyvsp[0].expr); yyval.expr = yyvsp[-2].expr; ;
break;} break;}
case 152: case 152:
#line 577 "cmdgram.y" #line 579 "cmdgram.y"
{ yyval.slist = NULL; ; { yyval.slist = NULL; ;
break;} break;}
case 153: case 153:
#line 579 "cmdgram.y" #line 581 "cmdgram.y"
{ yyval.slist = yyvsp[0].slist; ; { yyval.slist = yyvsp[0].slist; ;
break;} break;}
case 154: case 154:
#line 584 "cmdgram.y" #line 586 "cmdgram.y"
{ yyval.slist = yyvsp[0].slist; ; { yyval.slist = yyvsp[0].slist; ;
break;} break;}
case 155: case 155:
#line 586 "cmdgram.y" #line 588 "cmdgram.y"
{ yyvsp[-1].slist->append(yyvsp[0].slist); yyval.slist = yyvsp[-1].slist; ; { yyvsp[-1].slist->append(yyvsp[0].slist); yyval.slist = yyvsp[-1].slist; ;
break;} break;}
case 156: case 156:
#line 591 "cmdgram.y" #line 593 "cmdgram.y"
{ yyval.slist = SlotAssignNode::alloc( yyvsp[-3].s.lineNumber, NULL, NULL, yyvsp[-3].s.value, yyvsp[-1].expr); ; { yyval.slist = SlotAssignNode::alloc( yyvsp[-3].s.lineNumber, NULL, NULL, yyvsp[-3].s.value, yyvsp[-1].expr); ;
break;} break;}
case 157: case 157:
#line 593 "cmdgram.y" #line 595 "cmdgram.y"
{ yyval.slist = SlotAssignNode::alloc( yyvsp[-4].i.lineNumber, NULL, NULL, yyvsp[-3].s.value, yyvsp[-1].expr, yyvsp[-4].i.value); ; { yyval.slist = SlotAssignNode::alloc( yyvsp[-4].i.lineNumber, NULL, NULL, yyvsp[-3].s.value, yyvsp[-1].expr, yyvsp[-4].i.value); ;
break;} break;}
case 158: case 158:
#line 595 "cmdgram.y" #line 597 "cmdgram.y"
{ yyval.slist = SlotAssignNode::alloc( yyvsp[-3].i.lineNumber, NULL, NULL, StringTable->insert("datablock"), yyvsp[-1].expr); ; { yyval.slist = SlotAssignNode::alloc( yyvsp[-3].i.lineNumber, NULL, NULL, StringTable->insert("datablock"), yyvsp[-1].expr); ;
break;} break;}
case 159: case 159:
#line 597 "cmdgram.y" #line 599 "cmdgram.y"
{ yyval.slist = SlotAssignNode::alloc( yyvsp[-6].s.lineNumber, NULL, yyvsp[-4].expr, yyvsp[-6].s.value, yyvsp[-1].expr); ; { yyval.slist = SlotAssignNode::alloc( yyvsp[-6].s.lineNumber, NULL, yyvsp[-4].expr, yyvsp[-6].s.value, yyvsp[-1].expr); ;
break;} break;}
case 160: case 160:
#line 599 "cmdgram.y" #line 601 "cmdgram.y"
{ yyval.slist = SlotAssignNode::alloc( yyvsp[-7].i.lineNumber, NULL, yyvsp[-4].expr, yyvsp[-6].s.value, yyvsp[-1].expr, yyvsp[-7].i.value); ; { yyval.slist = SlotAssignNode::alloc( yyvsp[-7].i.lineNumber, NULL, yyvsp[-4].expr, yyvsp[-6].s.value, yyvsp[-1].expr, yyvsp[-7].i.value); ;
break;} break;}
case 161: case 161:
#line 604 "cmdgram.y" #line 606 "cmdgram.y"
{ yyval.expr = yyvsp[0].expr; ; { yyval.expr = yyvsp[0].expr; ;
break;} break;}
case 162: case 162:
#line 606 "cmdgram.y" #line 608 "cmdgram.y"
{ yyval.expr = CommaCatExprNode::alloc( yyvsp[-2].expr->dbgLineNumber, yyvsp[-2].expr, yyvsp[0].expr); ; { yyval.expr = CommaCatExprNode::alloc( yyvsp[-2].expr->dbgLineNumber, yyvsp[-2].expr, yyvsp[0].expr); ;
break;} break;}
} }
@ -2445,6 +2447,6 @@ yyerrhandle:
yystate = yyn; yystate = yyn;
goto yynewstate; goto yynewstate;
} }
#line 608 "cmdgram.y" #line 610 "cmdgram.y"