📄 yacc.c
字号:
case 104:
#line 570 "yacc.y"
{
yyval.stmt = newCalcStmt(stmt_return, yyvsp[-1].exp, NULL, NULL, NULL, currentfile, lineno);
;
break;}
case 105:
#line 577 "yacc.y"
{
yyval.exp=yyvsp[0].exp;
;
break;}
case 106:
#line 581 "yacc.y"
{
appendObject(&yyvsp[-2].exp, yyvsp[0].exp);
yyval.exp = yyvsp[-2].exp;
;
break;}
case 107:
#line 589 "yacc.y"
{yyval.exp = evaluate_void_exp();;
break;}
case 108:
#line 591 "yacc.y"
{yyval.exp = yyvsp[0].exp;;
break;}
case 109:
#line 596 "yacc.y"
{
yyval.exp = evaluate_id_exp(yyvsp[0].val.s);
;
break;}
case 110:
#line 600 "yacc.y"
{
yyval.exp = evaluate_const_exp(bt_long, &(yyvsp[0].val.i));
;
break;}
case 111:
#line 604 "yacc.y"
{
yyval.exp = evaluate_const_exp(bt_unsignedlong, &(yyvsp[0].val.u));
;
break;}
case 112:
#line 608 "yacc.y"
{
yyval.exp = evaluate_const_exp(bt_pointer, yyvsp[0].val.s); //remember allocate mem for const string
;
break;}
case 113:
#line 612 "yacc.y"
{
yyval.exp = evaluate_const_exp(bt_double, &(yyvsp[0].val.f));
;
break;}
case 114:
#line 616 "yacc.y"
{
yyval.exp = evaluate_const_exp(bt_long, &(yyvsp[0].val.i));
;
break;}
case 115:
#line 620 "yacc.y"
{yyval.exp=yyvsp[-1].exp;;
break;}
case 116:
#line 625 "yacc.y"
{yyval.exp=yyvsp[0].exp;;
break;}
case 117:
#line 627 "yacc.y"
{
yyval.exp = evaluate_array_exp(yyvsp[-3].exp, yyvsp[-1].exp);
;
break;}
case 118:
#line 631 "yacc.y"
{
yyval.exp = evaluate_call_exp(yyvsp[-2].exp, evaluate_void_exp());
;
break;}
case 119:
#line 635 "yacc.y"
{
yyval.exp = evaluate_call_exp(yyvsp[-3].exp, yyvsp[-1].exp);
;
break;}
case 120:
#line 639 "yacc.y"
{
yyval.exp = evaluate_member_exp(exp_ntomem, yyvsp[-2].exp, yyvsp[0].val.s);
;
break;}
case 121:
#line 643 "yacc.y"
{
yyval.exp = evaluate_member_exp(exp_ptomem, yyvsp[-2].exp, yyvsp[0].val.s);
;
break;}
case 122:
#line 647 "yacc.y"
{
yyval.exp = evaluate_indecr_exp(-exp_incr, yyvsp[-1].exp);
;
break;}
case 123:
#line 651 "yacc.y"
{
yyval.exp = evaluate_indecr_exp(-exp_decr, yyvsp[-1].exp);
;
break;}
case 124:
#line 658 "yacc.y"
{
yyval.exp=yyvsp[0].exp;
;
break;}
case 125:
#line 662 "yacc.y"
{
yyval.exp = evaluate_indecr_exp(exp_incr, yyvsp[0].exp);
;
break;}
case 126:
#line 666 "yacc.y"
{
yyval.exp = evaluate_indecr_exp(exp_decr, yyvsp[0].exp);
;
break;}
case 127:
#line 670 "yacc.y"
{
yyval.exp = evaluate_unary_exp(yyvsp[-1].val.i, yyvsp[0].exp);
;
break;}
case 128:
#line 674 "yacc.y"
{
yyval.exp = evaluate_typecast_exp(yyvsp[-2].type, yyvsp[0].exp);
;
break;}
case 129:
#line 678 "yacc.y"
{
yyval.exp = evaluate_sizeof_exp(NULL, yyvsp[-1].exp);
;
break;}
case 130:
#line 682 "yacc.y"
{
yyval.exp = evaluate_sizeof_exp(yyvsp[-1].type, NULL);
;
break;}
case 131:
#line 689 "yacc.y"
{yyval.val.i = exp_ptr;;
break;}
case 132:
#line 691 "yacc.y"
{yyval.val.i = exp_val;;
break;}
case 133:
#line 693 "yacc.y"
{yyval.val.i = exp_uplus;;
break;}
case 134:
#line 695 "yacc.y"
{yyval.val.i = exp_uminus;;
break;}
case 135:
#line 697 "yacc.y"
{yyval.val.i = exp_rvs;;
break;}
case 136:
#line 699 "yacc.y"
{yyval.val.i = exp_lnot;;
break;}
case 137:
#line 704 "yacc.y"
{yyval.exp=yyvsp[0].exp;;
break;}
case 138:
#line 706 "yacc.y"
{
yyval.exp = evaluate_binary_exp(exp_mul, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 139:
#line 710 "yacc.y"
{
yyval.exp = evaluate_binary_exp(exp_div, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 140:
#line 714 "yacc.y"
{
yyval.exp = evaluate_binary_exp(exp_mod, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 141:
#line 721 "yacc.y"
{yyval.exp =yyvsp[0].exp;;
break;}
case 142:
#line 723 "yacc.y"
{
yyval.exp = evaluate_binary_exp(exp_add, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 143:
#line 727 "yacc.y"
{
yyval.exp = evaluate_binary_exp(exp_sub, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 144:
#line 734 "yacc.y"
{yyval.exp =yyvsp[0].exp;;
break;}
case 145:
#line 736 "yacc.y"
{
yyval.exp = evaluate_binary_exp(exp_lsh, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 146:
#line 740 "yacc.y"
{
yyval.exp = evaluate_binary_exp(exp_rsh, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 147:
#line 747 "yacc.y"
{yyval.exp =yyvsp[0].exp;;
break;}
case 148:
#line 749 "yacc.y"
{
yyval.exp = evaluate_cmp_exp(exp_les, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 149:
#line 753 "yacc.y"
{
yyval.exp = evaluate_cmp_exp(exp_gtr, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 150:
#line 757 "yacc.y"
{
yyval.exp = evaluate_cmp_exp(exp_leq, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 151:
#line 761 "yacc.y"
{
yyval.exp = evaluate_cmp_exp(exp_geq, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 152:
#line 768 "yacc.y"
{yyval.exp = yyvsp[0].exp;;
break;}
case 153:
#line 770 "yacc.y"
{
yyval.exp = evaluate_cmp_exp(exp_eq, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 154:
#line 774 "yacc.y"
{
yyval.exp = evaluate_cmp_exp(exp_ueq, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 155:
#line 781 "yacc.y"
{yyval.exp=yyvsp[0].exp;;
break;}
case 156:
#line 783 "yacc.y"
{
yyval.exp = evaluate_bit_exp(exp_and, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 157:
#line 790 "yacc.y"
{yyval.exp=yyvsp[0].exp;;
break;}
case 158:
#line 792 "yacc.y"
{
yyval.exp = evaluate_bit_exp(exp_xor, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 159:
#line 799 "yacc.y"
{yyval.exp=yyvsp[0].exp;;
break;}
case 160:
#line 801 "yacc.y"
{
yyval.exp = evaluate_bit_exp(exp_or, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 161:
#line 808 "yacc.y"
{yyval.exp=yyvsp[0].exp;;
break;}
case 162:
#line 810 "yacc.y"
{
yyval.exp = evaluate_logic_exp(exp_land, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 163:
#line 817 "yacc.y"
{yyval.exp=yyvsp[0].exp;;
break;}
case 164:
#line 819 "yacc.y"
{
yyval.exp = evaluate_logic_exp(exp_lor, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 165:
#line 826 "yacc.y"
{yyval.exp=yyvsp[0].exp;;
break;}
case 166:
#line 828 "yacc.y"
{
yyval.exp = evaluate_trinary_exp(yyvsp[-4].exp, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 167:
#line 835 "yacc.y"
{yyval.exp=yyvsp[0].exp;;
break;}
case 168:
#line 837 "yacc.y"
{
yyval.exp = evaluate_assign_exp(yyvsp[-1].val.i, yyvsp[-2].exp, yyvsp[0].exp);
;
break;}
case 169:
#line 844 "yacc.y"
{yyval.val.i = exp_assign;;
break;}
case 170:
#line 846 "yacc.y"
{yyval.val.i = exp_mulas;;
break;}
case 171:
#line 848 "yacc.y"
{yyval.val.i = exp_divas;;
break;}
case 172:
#line 850 "yacc.y"
{yyval.val.i = exp_modas;;
break;}
case 173:
#line 852 "yacc.y"
{yyval.val.i = exp_addas;;
break;}
case 174:
#line 854 "yacc.y"
{yyval.val.i = exp_subas;;
break;}
case 175:
#line 856 "yacc.y"
{yyval.val.i = exp_lshas;;
break;}
case 176:
#line 858 "yacc.y"
{yyval.val.i = exp_rshas;;
break;}
case 177:
#line 860 "yacc.y"
{yyval.val.i = exp_andas;;
break;}
case 178:
#line 862 "yacc.y"
{yyval.val.i = exp_xoras;;
break;}
case 179:
#line 864 "yacc.y"
{yyval.val.i = exp_oras;;
break;}
}
/* the action file gets copied in in place of this dollarsign */
#line 487 "bison.simple"
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");
}
#
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -