and update the parser output

This commit is contained in:
rlar 2011-02-11 17:20:48 +00:00
parent b523db46f3
commit 7aac9e40f8
2 changed files with 48 additions and 35 deletions

View File

@ -1,3 +1,7 @@
2011-02-11 Robert Larice
* src/frontend/parse-bison.c :
and update the parser output
2011-02-11 Robert Larice
* src/frontend/parse-bison.y :
silence a `bcheck' warning `read from uninitialized memory'

View File

@ -1,4 +1,4 @@
/* A Bison parser, made by GNU Bison 2.3. */
/* A Bison parser, made by GNU Bison 2.3. */
/* Skeleton implementation for Bison's Yacc-like parsers in C
@ -483,10 +483,10 @@ static const yytype_int8 yyrhs[] =
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const yytype_uint8 yyrline[] =
{
0, 108, 108, 109, 113, 114, 118, 125, 126, 128,
129, 130, 131, 132, 133, 134, 136, 138, 139, 141,
143, 144, 145, 146, 147, 148, 150, 151, 153, 154,
155
0, 113, 113, 114, 118, 119, 123, 130, 131, 133,
134, 135, 136, 137, 138, 139, 141, 143, 144, 146,
148, 149, 150, 151, 152, 153, 155, 156, 158, 159,
160
};
#endif
@ -1311,6 +1311,15 @@ YYLTYPE yylloc;
yylloc.first_column = yylloc.last_column = 0;
#endif
/* User initialization code. */
#line 102 "parse-bison.y"
{
yylval.num = 0.0;
}
/* Line 1069 of yacc.c. */
#line 1322 "parse-bison.c"
yyvsp[0] = yylval;
goto yysetstate;
/*------------------------------------------------------------.
@ -1494,22 +1503,22 @@ yyreduce:
switch (yyn)
{
case 2:
#line 108 "parse-bison.y"
#line 113 "parse-bison.y"
{ *retval = NULL; ;}
break;
case 3:
#line 109 "parse-bison.y"
#line 114 "parse-bison.y"
{ *retval = (yyvsp[(1) - (1)].pnode); ;}
break;
case 5:
#line 114 "parse-bison.y"
#line 119 "parse-bison.y"
{ (yyvsp[(1) - (2)].pnode)->pn_next = (yyvsp[(2) - (2)].pnode); (yyvsp[(2) - (2)].pnode)->pn_use ++; (yyval.pnode) = (yyvsp[(1) - (2)].pnode); ;}
break;
case 6:
#line 118 "parse-bison.y"
#line 123 "parse-bison.y"
{
(yyvsp[(1) - (1)].pnode)->pn_name = copy_substring((yylsp[(1) - (1)]).start, (yylsp[(1) - (1)]).stop);
(yyval.pnode) = (yyvsp[(1) - (1)].pnode);
@ -1517,129 +1526,129 @@ yyreduce:
break;
case 7:
#line 125 "parse-bison.y"
#line 130 "parse-bison.y"
{ (yyval.pnode) = mknnode((yyvsp[(1) - (1)].num)); ;}
break;
case 8:
#line 126 "parse-bison.y"
#line 131 "parse-bison.y"
{ (yyval.pnode) = mksnode((yyvsp[(1) - (1)].str)); ;}
break;
case 9:
#line 128 "parse-bison.y"
#line 133 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_COMMA, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 10:
#line 129 "parse-bison.y"
#line 134 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_PLUS, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 11:
#line 130 "parse-bison.y"
#line 135 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_MINUS, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 12:
#line 131 "parse-bison.y"
#line 136 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_TIMES, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 13:
#line 132 "parse-bison.y"
#line 137 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_MOD, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 14:
#line 133 "parse-bison.y"
#line 138 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_DIVIDE, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 15:
#line 134 "parse-bison.y"
#line 139 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_POWER, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 16:
#line 136 "parse-bison.y"
#line 141 "parse-bison.y"
{ (yyval.pnode) = (yyvsp[(2) - (3)].pnode); ;}
break;
case 17:
#line 138 "parse-bison.y"
#line 143 "parse-bison.y"
{ (yyval.pnode) = mkunode(PT_OP_UMINUS, (yyvsp[(2) - (2)].pnode)); ;}
break;
case 18:
#line 139 "parse-bison.y"
#line 144 "parse-bison.y"
{ (yyval.pnode) = mkunode(PT_OP_NOT, (yyvsp[(2) - (2)].pnode)); ;}
break;
case 19:
#line 141 "parse-bison.y"
#line 146 "parse-bison.y"
{ (yyval.pnode) = mkfnode((yyvsp[(1) - (4)].str), (yyvsp[(3) - (4)].pnode)); if(!(yyval.pnode)) YYABORT; ;}
break;
case 20:
#line 143 "parse-bison.y"
#line 148 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_EQ, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 21:
#line 144 "parse-bison.y"
#line 149 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_NE, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 22:
#line 145 "parse-bison.y"
#line 150 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_GT, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 23:
#line 146 "parse-bison.y"
#line 151 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_LT, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 24:
#line 147 "parse-bison.y"
#line 152 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_GE, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 25:
#line 148 "parse-bison.y"
#line 153 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_LE, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 26:
#line 150 "parse-bison.y"
#line 155 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_AND, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 27:
#line 151 "parse-bison.y"
#line 156 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_OR, (yyvsp[(1) - (3)].pnode), (yyvsp[(3) - (3)].pnode)); ;}
break;
case 28:
#line 153 "parse-bison.y"
#line 158 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_INDX, (yyvsp[(1) - (4)].pnode), (yyvsp[(3) - (4)].pnode)); ;}
break;
case 29:
#line 154 "parse-bison.y"
#line 159 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_RANGE, (yyvsp[(1) - (4)].pnode), (yyvsp[(3) - (4)].pnode)); ;}
break;
case 30:
#line 155 "parse-bison.y"
#line 160 "parse-bison.y"
{ (yyval.pnode) = mkbnode(PT_OP_TERNARY,(yyvsp[(1) - (5)].pnode),
mkbnode(PT_OP_COMMA,(yyvsp[(3) - (5)].pnode),(yyvsp[(5) - (5)].pnode))); ;}
break;
/* Line 1267 of yacc.c. */
#line 1643 "parse-bison.c"
#line 1652 "parse-bison.c"
default: break;
}
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
@ -1859,7 +1868,7 @@ yyreturn:
}
#line 159 "parse-bison.y"
#line 164 "parse-bison.y"