Newer
Older
break ;
}
}
}
;
break;}
case 230:
{
if(!(pArrCat = Get_ArrayOptionCategory(yyvsp[-5].c)))
vyyerror("Unknown Array Option Class '%s'", yyvsp[-5].c);
else{
if(!(pArrOpt = Get_ArrayOption(yyvsp[-3].c, pArrCat, &i)))
vyyerror("Unknown Array Option '%s.%s'", yyvsp[-5].c, yyvsp[-3].c);
else{
switch(i){
case GMSH_DOUBLE :
for(j=0 ; j<4; j++) ((double*)pArrOpt)[j] -= yyvsp[-1].v[j] ;
break ;
case GMSH_FLOAT :
for(j=0 ; j<4; j++) ((float*)pArrOpt)[j] -= (float)yyvsp[-1].v[j] ;
break ;
case GMSH_LONG :
for(j=0 ; j<4; j++) ((long*)pArrOpt)[j] -= (long)yyvsp[-1].v[j] ;
for(j=0 ; j<4; j++) ((int*)pArrOpt)[j] -= (int)yyvsp[-1].v[j] ;
break ;
}
}
}
;
break;}
5036
5037
5038
5039
5040
5041
5042
5043
5044
5045
5046
5047
5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
{
if(strcmp(yyvsp[-10].c, "Post"))
vyyerror("Unknown View Option Class '%s'", yyvsp[-10].c);
else{
if(!(pArrOpt = Get_ArrayViewOption((int)yyvsp[-6].d, yyvsp[-3].c, &i))){
if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-6].d);
else vyyerror("Unknown Array Option '%s.View[%d].%s'",
yyvsp[-10].c, (int)yyvsp[-6].d, yyvsp[-3].c);
}
else{
switch(i){
case GMSH_DOUBLE :
for(j=0 ; j<3; j++) ((double*)pArrOpt)[j] -= yyvsp[-1].v[j] ;
break ;
case GMSH_FLOAT :
for(j=0 ; j<3; j++) ((float*)pArrOpt)[j] -= (float)yyvsp[-1].v[j] ;
break ;
case GMSH_LONG :
for(j=0 ; j<3; j++) ((long*)pArrOpt)[j] -= (long)yyvsp[-1].v[j] ;
break ;
case GMSH_INT :
for(j=0 ; j<3; j++) ((int*)pArrOpt)[j] -= (int)yyvsp[-1].v[j] ;
break ;
}
}
}
;
break;}
case 232:
{
if(!(pColCat = Get_ColorOptionCategory(yyvsp[-7].c)))
vyyerror("Unknown Color Option Class '%s'", yyvsp[-7].c);
else{
if(!(pColOpt = Get_ColorOption(yyvsp[-3].c, pColCat)))
vyyerror("Unknown Color Option '%s.%s'", yyvsp[-7].c, yyvsp[-3].c);
else{
*pColOpt = yyvsp[-1].u ;
}
}
;
break;}
break;}
{yyval.i = -1;;
break;}
{yyval.i = -1;;
break;}
break;}
break;}
break;}
break;}
break;}
break;}
{ yyval.d = yyvsp[-2].d - yyvsp[0].d ; ;
break;}
{ yyval.d = yyvsp[-2].d + yyvsp[0].d ; ;
break;}
{ yyval.d = yyvsp[-2].d * yyvsp[0].d ; ;
break;}
{ yyval.d = yyvsp[-2].d / yyvsp[0].d ; ;
break;}
{ yyval.d = (int)yyvsp[-2].d % (int)yyvsp[0].d ; ;
break;}
{ yyval.d = pow(yyvsp[-2].d,yyvsp[0].d) ; ;
break;}
{ yyval.d = yyvsp[-2].d < yyvsp[0].d ; ;
break;}
{ yyval.d = yyvsp[-2].d > yyvsp[0].d ; ;
break;}
{ yyval.d = yyvsp[-2].d <= yyvsp[0].d ; ;
break;}
{ yyval.d = yyvsp[-2].d >= yyvsp[0].d ; ;
break;}
{ yyval.d = yyvsp[-2].d == yyvsp[0].d ; ;
break;}
{ yyval.d = yyvsp[-2].d != yyvsp[0].d ; ;
break;}
{ yyval.d = yyvsp[-2].d && yyvsp[0].d ; ;
break;}
{ yyval.d = yyvsp[-2].d || yyvsp[0].d ; ;
break;}
{ yyval.d = yyvsp[-4].d? yyvsp[-2].d : yyvsp[0].d ; ;
break;}
break;}
break;}
break;}
break;}
break;}
break;}
break;}
break;}
break;}
break;}
break;}
break;}
break;}
break;}
break;}
break;}
break;}
{ yyval.d = fmod(yyvsp[-3].d,yyvsp[-1].d); ;
break;}
break;}
{ yyval.d = sqrt(yyvsp[-3].d*yyvsp[-3].d+yyvsp[-1].d*yyvsp[-1].d); ;
break;}
{
TheSymbol.Name = yyvsp[0].c ;
if (!List_Query(Symbol_L, &TheSymbol, CompareSymbols)) {
vyyerror("Unknown Variable '%s'", yyvsp[0].c) ; yyval.d = 0. ;
}
else yyval.d = TheSymbol.val ;
Free(yyvsp[0].c);
;
break;}
{
if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-2].c)))
vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-2].c);
else{
if(!(pNumOpt = Get_NumberOption(yyvsp[0].c, pNumCat, &i)))
vyyerror("Unknown Numeric Option '%s.%s'", yyvsp[-2].c, yyvsp[0].c);
else{
switch(i){
case GMSH_DOUBLE : yyval.d = *(double*)pNumOpt ; break ;
case GMSH_FLOAT : yyval.d = (double)(*(float*)pNumOpt) ; break ;
case GMSH_LONG : yyval.d = (double)(*(long*)pNumOpt) ; break ;
case GMSH_INT : yyval.d = (double)(*(int*)pNumOpt) ; break ;
}
}
}
;
break;}
5298
5299
5300
5301
5302
5303
5304
5305
5306
5307
5308
5309
5310
5311
5312
5313
5314
5315
5316
5317
5318
{
if(strcmp(yyvsp[-7].c, "Post"))
vyyerror("Unknown View Option Class '%s'", yyvsp[-7].c);
else{
if(!(pNumOpt = Get_NumberViewOption((int)yyvsp[-3].d, yyvsp[0].c, &i))){
if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-3].d);
else vyyerror("Unknown Numeric Option '%s.View[%d].%s'",
yyvsp[-7].c, (int)yyvsp[-3].d, yyvsp[0].c);
}
else{
switch(i){
case GMSH_DOUBLE : yyval.d = *(double*)pNumOpt ; break ;
case GMSH_FLOAT : yyval.d = (double)(*(float*)pNumOpt) ; break ;
case GMSH_LONG : yyval.d = (double)(*(long*)pNumOpt) ; break ;
case GMSH_INT : yyval.d = (double)(*(int*)pNumOpt) ; break ;
}
}
}
;
break;}
case 286:
{
if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-3].c)))
vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-3].c);
else{
if(!(pNumOpt = Get_NumberOption(yyvsp[-1].c, pNumCat, &i)))
vyyerror("Unknown Numeric Option '%s.%s'", yyvsp[-3].c, yyvsp[-1].c);
else{
switch(i){
case GMSH_DOUBLE : yyval.d = (*(double*)pNumOpt += 1.) ; break ;
case GMSH_FLOAT : yyval.d = (double)(*(float*)pNumOpt += 1.) ; break ;
case GMSH_LONG : yyval.d = (double)(*(long*)pNumOpt += 1) ; break ;
case GMSH_INT : yyval.d = (double)(*(int*)pNumOpt += 1) ; break ;
}
}
}
;
break;}
5339
5340
5341
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351
5352
5353
5354
5355
5356
5357
5358
5359
{
if(strcmp(yyvsp[-8].c, "Post"))
vyyerror("Unknown View Option Class '%s'", yyvsp[-8].c);
else{
if(!(pNumOpt = Get_NumberViewOption((int)yyvsp[-4].d, yyvsp[-1].c, &i))){
if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-4].d);
else vyyerror("Unknown Numeric Option '%s.View[%d].%s'",
yyvsp[-8].c, (int)yyvsp[-4].d, yyvsp[-1].c);
}
else{
switch(i){
case GMSH_DOUBLE : yyval.d = (*(double*)pNumOpt += 1.) ; break ;
case GMSH_FLOAT : yyval.d = (double)(*(float*)pNumOpt += 1.) ; break ;
case GMSH_LONG : yyval.d = (double)(*(long*)pNumOpt += 1) ; break ;
case GMSH_INT : yyval.d = (double)(*(int*)pNumOpt += 1) ; break ;
}
}
}
;
break;}
case 288:
{
if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-3].c)))
vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-3].c);
else{
if(!(pNumOpt = Get_NumberOption(yyvsp[-1].c, pNumCat, &i)))
vyyerror("Unknown Numeric Option '%s.%s'", yyvsp[-3].c, yyvsp[-1].c);
else{
switch(i){
case GMSH_DOUBLE : yyval.d = (*(double*)pNumOpt -= 1.) ; break ;
case GMSH_FLOAT : yyval.d = (double)(*(float*)pNumOpt -= 1.) ; break ;
case GMSH_LONG : yyval.d = (double)(*(long*)pNumOpt -= 1) ; break ;
case GMSH_INT : yyval.d = (double)(*(int*)pNumOpt -= 1) ; break ;
}
}
}
;
break;}
5380
5381
5382
5383
5384
5385
5386
5387
5388
5389
5390
5391
5392
5393
5394
5395
5396
5397
5398
5399
5400
{
if(strcmp(yyvsp[-8].c, "Post"))
vyyerror("Unknown View Option Class '%s'", yyvsp[-8].c);
else{
if(!(pNumOpt = Get_NumberViewOption((int)yyvsp[-4].d, yyvsp[-1].c, &i))){
if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-4].d);
else vyyerror("Unknown Numeric Option '%s.View[%d].%s'",
yyvsp[-8].c, (int)yyvsp[-4].d, yyvsp[-1].c);
}
else{
switch(i){
case GMSH_DOUBLE : yyval.d = (*(double*)pNumOpt -= 1.) ; break ;
case GMSH_FLOAT : yyval.d = (double)(*(float*)pNumOpt -= 1.) ; break ;
case GMSH_LONG : yyval.d = (double)(*(long*)pNumOpt -= 1) ; break ;
case GMSH_INT : yyval.d = (double)(*(int*)pNumOpt -= 1) ; break ;
}
}
}
;
break;}
case 290:
{
ListOfDouble2_L = List_Create(2,1,sizeof(double)) ;
for(d=yyvsp[-2].d ; (yyvsp[-2].d<yyvsp[0].d)?(d<=yyvsp[0].d):(d>=yyvsp[0].d) ; (yyvsp[-2].d<yyvsp[0].d)?(d+=1.):(d-=1.))
List_Add(ListOfDouble2_L, &d) ;
;
break;}
{
ListOfDouble2_L = List_Create(2,1,sizeof(double)) ;
if(!yyvsp[0].d || (yyvsp[-4].d<yyvsp[-2].d && yyvsp[0].d<0) || (yyvsp[-4].d>yyvsp[-2].d && yyvsp[0].d>0)){
vyyerror("Wrong Increment in '%g:%g:%g'", yyvsp[-4].d, yyvsp[-2].d, yyvsp[0].d) ;
List_Add(ListOfDouble2_L, &(yyvsp[-4].d)) ;
}
else
for(d=yyvsp[-4].d ; (yyvsp[0].d>0)?(d<=yyvsp[-2].d):(d>=yyvsp[-2].d) ; d+=yyvsp[0].d)
List_Add(ListOfDouble2_L, &d) ;
;
break;}
{
;
break;}
{
for(i=0 ; i<6 ; i++) yyval.v[i] = -yyvsp[0].v[i] ;
;
break;}
{
yyval.v = yyvsp[0].v;
;
break;}
{
for(i=0 ; i<6 ; i++) yyval.v[i] = yyvsp[-2].v[i] - yyvsp[0].v[i] ;
;
break;}
{
for(i=0 ; i<6 ; i++) yyval.v[i] = yyvsp[-2].v[i] + yyvsp[0].v[i] ;
;
break;}
{
yyval.v[0]=yyvsp[-9].d; yyval.v[1]=yyvsp[-7].d; yyval.v[2]=yyvsp[-5].d; yyval.v[3]=yyvsp[-3].d; yyval.v[4]=yyvsp[-1].d;
;
break;}
{
yyval.v[0]=yyvsp[-7].d; yyval.v[1]=yyvsp[-5].d; yyval.v[2]=yyvsp[-3].d; yyval.v[3]=yyvsp[-1].d; yyval.v[4]=1.0;
;
break;}
{
yyval.v[0]=yyvsp[-5].d; yyval.v[1]=yyvsp[-3].d; yyval.v[2]=yyvsp[-1].d; yyval.v[3]=0.0; yyval.v[4]=1.0;
;
break;}
yyval.v[0]=yyvsp[-5].d; yyval.v[1]=yyvsp[-3].d; yyval.v[2]=yyvsp[-1].d; yyval.v[3]=0.0; yyval.v[4]=1.0;
5478
5479
5480
5481
5482
5483
5484
5485
5486
5487
5488
5489
5490
5491
5492
5493
5494
5495
5496
5497
5498
5499
5500
if(!(pArrCat = Get_ArrayOptionCategory(yyvsp[-2].c)))
vyyerror("Unknown Array Option Class '%s'", yyvsp[-2].c);
else{
if(!(pArrOpt = Get_ArrayOption(yyvsp[0].c, pArrCat, &i)))
vyyerror("Unknown Array Option '%s.%s'", yyvsp[-2].c, yyvsp[0].c);
else{
switch(i){
case GMSH_DOUBLE :
for(j=0 ; j<4 ; j++) yyval.v[j] = ((double*)pArrOpt)[j] ;
break ;
case GMSH_FLOAT :
for(j=0 ; j<4 ; j++) yyval.v[j] = (double)((float*)pArrOpt)[j] ;
break ;
case GMSH_LONG :
for(j=0 ; j<4 ; j++) yyval.v[j] = (double)((int*)pArrOpt)[j] ;
break ;
case GMSH_INT :
for(j=0 ; j<4 ; j++) yyval.v[j] = (double)((int*)pArrOpt)[j] ;
break ;
}
yyval.v[4] = 1. ;
}
}
{
5506
5507
5508
5509
5510
5511
5512
5513
5514
5515
5516
5517
5518
5519
5520
5521
5522
5523
5524
5525
5526
5527
5528
5529
5530
5531
5532
if(strcmp(yyvsp[-7].c, "Post"))
vyyerror("Unknown View Option Class '%s'", yyvsp[-7].c);
else{
if(!(pArrOpt = Get_ArrayViewOption((int)yyvsp[-3].d, yyvsp[0].c, &i))){
if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-3].d);
else vyyerror("Unknown Array Option '%s.View[%d].%s'",
yyvsp[-7].c, (int)yyvsp[-3].d, yyvsp[0].c);
}
else{
switch(i){
case GMSH_DOUBLE :
for(j=0 ; j<3 ; j++) yyval.v[j] = ((double*)pArrOpt)[j] ;
break ;
case GMSH_FLOAT :
for(j=0 ; j<3 ; j++) yyval.v[j] = (double)((float*)pArrOpt)[j] ;
break ;
case GMSH_LONG :
for(j=0 ; j<3 ; j++) yyval.v[j] = (double)((int*)pArrOpt)[j] ;
break ;
case GMSH_INT :
for(j=0 ; j<3 ; j++) yyval.v[j] = (double)((int*)pArrOpt)[j] ;
break ;
}
yyval.v[3] = 0. ;
yyval.v[4] = 1. ;
}
}
;
break;}
{
;
break;}
{
;
break;}
{
yyval.l=ListOfListOfDouble_L;
;
break;}
{
;
break;}
{
List_Add(ListOfListOfDouble_L, &(yyvsp[0].l)) ;
;
break;}
{
;
break;}
{
ListOfDouble_L = List_Create(2,1,sizeof(double)) ;
List_Add(ListOfDouble_L, &(yyvsp[0].d)) ;
yyval.l=ListOfDouble_L;
;
break;}
{
yyval.l=ListOfDouble_L;
;
break;}
{
ListOfDouble_L = List_Create(2,1,sizeof(double)) ;
List_Add(ListOfDouble_L, &(yyvsp[0].d)) ;
;
break;}
{
ListOfDouble_L = List_Create(2,1,sizeof(double)) ;
for(i=0 ; i<List_Nbr(ListOfDouble2_L) ; i++){
List_Read(ListOfDouble2_L, i, &d) ;
List_Add(ListOfDouble_L, &d) ;
}
List_Delete(ListOfDouble2_L);
;
break;}
{
List_Add(ListOfDouble_L, &(yyvsp[0].d)) ;
;
break;}
{
for(i=0 ; i<List_Nbr(ListOfDouble2_L) ; i++){
List_Read(ListOfDouble2_L, i, &d) ;
List_Add(ListOfDouble_L, &d) ;
}
List_Delete(ListOfDouble2_L);
;
break;}
{
yyval.u = PACK_COLOR((int)yyvsp[-7].d, (int)yyvsp[-5].d, (int)yyvsp[-3].d, (int)yyvsp[-1].d);
;
break;}
{
yyval.u = PACK_COLOR((int)yyvsp[-5].d, (int)yyvsp[-3].d, (int)yyvsp[-1].d, 255);
;
break;}
{
yyval.u = Get_ColorForString(ColorString, (int)yyvsp[-1].d, yyvsp[-3].c, &flag);
if(flag) vyyerror("Unknown Color '%s'", yyvsp[-3].c);
;
break;}
{
yyval.u = Get_ColorForString(ColorString, -1, yyvsp[0].c, &flag);
if(flag) vyyerror("Unknown Color '%s'", yyvsp[0].c);
;
break;}
{
if(!(pColCat = Get_ColorOptionCategory(yyvsp[-4].c)))
vyyerror("Unknown Color Option Class '%s'", yyvsp[-4].c);
else{
if(!(pColOpt = Get_ColorOption(yyvsp[0].c, pColCat)))
vyyerror("Unknown Color Option '%s.%s'", yyvsp[-4].c, yyvsp[0].c);
else{
yyval.u = *pColOpt ;
}
}
;
break;}
}
/* the action file gets copied in in place of this dollarsign */
#line 543 "/usr/lib/bison.simple"
5681
5682
5683
5684
5685
5686
5687
5688
5689
5690
5691
5692
5693
5694
5695
5696
5697
5698
5699
5700
5701
5702
5703
5704
5705
5706
5707
5708
5709
5710
5711
5712
5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724
5725
5726
5727
5728
5729
5730
5731
5732
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791
5792
5793
5794
5795
5796
5797
5798
5799
5800
5801
5802
5803
5804
5805
5806
5807
5808
5809
5810
5811
5812
5813
5814
5815
5816
5817
5818
5819
5820
5821
5822
5823
5824
5825
5826
5827
5828
5829
5830
5831
5832
5833
5834
5835
5836
5837
5838
5839
5840
5841
5842
5843
5844
5845
5846
5847
5848
5849
5850
5851
5852
5853
5854
5855
5856
5857
5858
5859
5860
5861
5862
5863
5864
5865
5866
5867
5868
5869
5870
5871
5872
5873
5874
yyvsp -= yylen;
yyssp -= yylen;
#ifdef YYLSP_NEEDED
yylsp -= yylen;
#endif
#if YYDEBUG != 0
if (yydebug)
{
short *ssp1 = yyss - 1;
fprintf (stderr, "state stack now");
while (ssp1 != yyssp)
fprintf (stderr, " %d", *++ssp1);
fprintf (stderr, "\n");
}
#endif
*++yyvsp = yyval;
#ifdef YYLSP_NEEDED
yylsp++;
if (yylen == 0)
{
yylsp->first_line = yylloc.first_line;
yylsp->first_column = yylloc.first_column;
yylsp->last_line = (yylsp-1)->last_line;
yylsp->last_column = (yylsp-1)->last_column;
yylsp->text = 0;
}
else
{
yylsp->last_line = (yylsp+yylen-1)->last_line;
yylsp->last_column = (yylsp+yylen-1)->last_column;
}
#endif
/* Now "shift" the result of the reduction.
Determine what state that goes to,
based on the state we popped back to
and the rule number reduced by. */
yyn = yyr1[yyn];
yystate = yypgoto[yyn - YYNTBASE] + *yyssp;
if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp)
yystate = yytable[yystate];
else
yystate = yydefgoto[yyn - YYNTBASE];
goto yynewstate;
yyerrlab: /* here on detecting error */
if (! yyerrstatus)
/* If not already recovering from an error, report this error. */
{
++yynerrs;
#ifdef YYERROR_VERBOSE
yyn = yypact[yystate];
if (yyn > YYFLAG && yyn < YYLAST)
{
int size = 0;
char *msg;
int x, count;
count = 0;
/* Start X at -yyn if nec to avoid negative indexes in yycheck. */
for (x = (yyn < 0 ? -yyn : 0);
x < (sizeof(yytname) / sizeof(char *)); x++)
if (yycheck[x + yyn] == x)
size += strlen(yytname[x]) + 15, count++;
msg = (char *) malloc(size + 15);
if (msg != 0)
{
strcpy(msg, "parse error");
if (count < 5)
{
count = 0;
for (x = (yyn < 0 ? -yyn : 0);
x < (sizeof(yytname) / sizeof(char *)); x++)
if (yycheck[x + yyn] == x)
{
strcat(msg, count == 0 ? ", expecting `" : " or `");
strcat(msg, yytname[x]);
strcat(msg, "'");
count++;
}
}
yyerror(msg);
free(msg);
}
else
yyerror ("parse error; also virtual memory exceeded");
}
else
#endif /* YYERROR_VERBOSE */
yyerror("parse error");
}
goto yyerrlab1;
yyerrlab1: /* here on error raised explicitly by an action */
if (yyerrstatus == 3)
{
/* if just tried and failed to reuse lookahead token after an error, discard it. */
/* return failure if at end of input */
if (yychar == YYEOF)
YYABORT;
#if YYDEBUG != 0
if (yydebug)
fprintf(stderr, "Discarding token %d (%s).\n", yychar, yytname[yychar1]);
#endif
yychar = YYEMPTY;
}
/* Else will try to reuse lookahead token
after shifting the error token. */
yyerrstatus = 3; /* Each real token shifted decrements this */
goto yyerrhandle;
yyerrdefault: /* current state does not do anything special for the error token. */
#if 0
/* This is wrong; only states that explicitly want error tokens
should shift them. */
yyn = yydefact[yystate]; /* If its default is to accept any token, ok. Otherwise pop it.*/
if (yyn) goto yydefault;
#endif
yyerrpop: /* pop the current state because it cannot handle the error token */
if (yyssp == yyss) YYABORT;
yyvsp--;
yystate = *--yyssp;
#ifdef YYLSP_NEEDED
yylsp--;
#endif
#if YYDEBUG != 0
if (yydebug)
{
short *ssp1 = yyss - 1;
fprintf (stderr, "Error: state stack now");
while (ssp1 != yyssp)
fprintf (stderr, " %d", *++ssp1);
fprintf (stderr, "\n");
}
#endif
yyerrhandle:
yyn = yypact[yystate];
if (yyn == YYFLAG)
goto yyerrdefault;
yyn += YYTERROR;
if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR)
goto yyerrdefault;
yyn = yytable[yyn];
if (yyn < 0)
{
if (yyn == YYFLAG)
goto yyerrpop;
yyn = -yyn;
goto yyreduce;
}
else if (yyn == 0)
goto yyerrpop;
if (yyn == YYFINAL)
YYACCEPT;
#if YYDEBUG != 0
if (yydebug)
fprintf(stderr, "Shifting error token, ");
#endif
*++yyvsp = yylval;
#ifdef YYLSP_NEEDED
*++yylsp = yylloc;
#endif
yystate = yyn;
goto yynewstate;
5875
5876
5877
5878
5879
5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
5896
5897
5898
yyacceptlab:
/* YYACCEPT comes here. */
if (yyfree_stacks)
{
free (yyss);
free (yyvs);
#ifdef YYLSP_NEEDED
free (yyls);
#endif
}
return 0;
yyabortlab:
/* YYABORT comes here. */
if (yyfree_stacks)
{
free (yyss);
free (yyvs);
#ifdef YYLSP_NEEDED
free (yyls);
#endif
}
return 1;
}
void InitSymbols(void){
Symbol_L = List_Create(10,1,sizeof(Symbol));
}
void DeleteSymbols(void){
List_Delete(Symbol_L);
}
int CompareSymbols (const void *a, const void *b){
return(strcmp(((Symbol*)a)->Name,((Symbol*)b)->Name));
}
void yyerror(char *s){
Msg(PARSER_ERROR, "'%s', line %d : %s (%s)",yyname,yylineno-1,s,yytext);
yyerrorstate=1;
}
va_list args;