1859
/* Copy into YYRESULT an error message about the unexpected token
1860
YYCHAR while in state YYSTATE. Return the number of bytes copied,
1861
including the terminating null byte. If YYRESULT is null, do not
1862
copy anything; just return the number of bytes that would be
1863
copied. As a special case, return 0 if an ordinary "syntax error"
1864
message will do. Return YYSIZE_MAXIMUM if overflow occurs during
1865
size calculation. */
1867
yysyntax_error (char *yyresult, int yystate, int yychar)
1828
/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
1829
about the unexpected token YYTOKEN for the state stack whose top is
1832
Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is
1833
not large enough to hold the message. In that case, also set
1834
*YYMSG_ALLOC to the required number of bytes. Return 2 if the
1835
required number of bytes is too large to store. */
1837
yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
1838
yytype_int16 *yyssp, int yytoken)
1869
int yyn = yypact[yystate];
1871
if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
1875
int yytype = YYTRANSLATE (yychar);
1876
YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
1877
YYSIZE_T yysize = yysize0;
1879
int yysize_overflow = 0;
1880
enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1881
char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1885
/* This is so xgettext sees the translatable formats that are
1886
constructed on the fly. */
1887
YY_("syntax error, unexpected %s");
1888
YY_("syntax error, unexpected %s, expecting %s");
1889
YY_("syntax error, unexpected %s, expecting %s or %s");
1890
YY_("syntax error, unexpected %s, expecting %s or %s or %s");
1891
YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
1895
static char const yyunexpected[] = "syntax error, unexpected %s";
1896
static char const yyexpecting[] = ", expecting %s";
1897
static char const yyor[] = " or %s";
1898
char yyformat[sizeof yyunexpected
1899
+ sizeof yyexpecting - 1
1900
+ ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
1901
* (sizeof yyor - 1))];
1902
char const *yyprefix = yyexpecting;
1904
/* Start YYX at -YYN if negative to avoid negative indexes in
1906
int yyxbegin = yyn < 0 ? -yyn : 0;
1908
/* Stay within bounds of both yycheck and yytname. */
1909
int yychecklim = YYLAST - yyn + 1;
1910
int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
1913
yyarg[0] = yytname[yytype];
1914
yyfmt = yystpcpy (yyformat, yyunexpected);
1916
for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1917
if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
1919
if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
1923
yyformat[sizeof yyunexpected - 1] = '\0';
1926
yyarg[yycount++] = yytname[yyx];
1927
yysize1 = yysize + yytnamerr (0, yytname[yyx]);
1928
yysize_overflow |= (yysize1 < yysize);
1930
yyfmt = yystpcpy (yyfmt, yyprefix);
1934
yyf = YY_(yyformat);
1935
yysize1 = yysize + yystrlen (yyf);
1936
yysize_overflow |= (yysize1 < yysize);
1939
if (yysize_overflow)
1940
return YYSIZE_MAXIMUM;
1944
/* Avoid sprintf, as that infringes on the user's name space.
1945
Don't have undefined behavior even if the translation
1946
produced a string with the wrong number of "%s"s. */
1947
char *yyp = yyresult;
1949
while ((*yyp = *yyf) != '\0')
1951
if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
1953
yyp += yytnamerr (yyp, yyarg[yyi++]);
1840
YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]);
1841
YYSIZE_T yysize = yysize0;
1843
enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1844
/* Internationalized format string. */
1845
const char *yyformat = 0;
1846
/* Arguments of yyformat. */
1847
char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1848
/* Number of reported tokens (one for the "unexpected", one per
1852
/* There are many possibilities here to consider:
1853
- Assume YYFAIL is not used. It's too flawed to consider. See
1854
<http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html>
1855
for details. YYERROR is fine as it does not invoke this
1857
- If this state is a consistent state with a default action, then
1858
the only way this function was invoked is if the default action
1859
is an error action. In that case, don't check for expected
1860
tokens because there are none.
1861
- The only way there can be no lookahead present (in yychar) is if
1862
this state is a consistent state with a default action. Thus,
1863
detecting the absence of a lookahead is sufficient to determine
1864
that there is no unexpected or expected token to report. In that
1865
case, just report a simple "syntax error".
1866
- Don't assume there isn't a lookahead just because this state is a
1867
consistent state with a default action. There might have been a
1868
previous inconsistent state, consistent state with a non-default
1869
action, or user semantic action that manipulated yychar.
1870
- Of course, the expected token list depends on states to have
1871
correct lookahead information, and it depends on the parser not
1872
to perform extra reductions after fetching a lookahead from the
1873
scanner and before detecting a syntax error. Thus, state merging
1874
(from LALR or IELR) and default reductions corrupt the expected
1875
token list. However, the list is correct for canonical LR with
1876
one exception: it will still contain any token that will not be
1877
accepted due to an error action in a later state.
1879
if (yytoken != YYEMPTY)
1881
int yyn = yypact[*yyssp];
1882
yyarg[yycount++] = yytname[yytoken];
1883
if (!yypact_value_is_default (yyn))
1885
/* Start YYX at -YYN if negative to avoid negative indexes in
1886
YYCHECK. In other words, skip the first -YYN actions for
1887
this state because they are default actions. */
1888
int yyxbegin = yyn < 0 ? -yyn : 0;
1889
/* Stay within bounds of both yycheck and yytname. */
1890
int yychecklim = YYLAST - yyn + 1;
1891
int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
1894
for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1895
if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
1896
&& !yytable_value_is_error (yytable[yyx + yyn]))
1898
if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
1904
yyarg[yycount++] = yytname[yyx];
1905
yysize1 = yysize + yytnamerr (0, yytname[yyx]);
1906
if (! (yysize <= yysize1
1907
&& yysize1 <= YYSTACK_ALLOC_MAXIMUM))
1916
# define YYCASE_(N, S) \
1920
YYCASE_(0, YY_("syntax error"));
1921
YYCASE_(1, YY_("syntax error, unexpected %s"));
1922
YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
1923
YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
1924
YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
1925
YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
1929
yysize1 = yysize + yystrlen (yyformat);
1930
if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
1934
if (*yymsg_alloc < yysize)
1936
*yymsg_alloc = 2 * yysize;
1937
if (! (yysize <= *yymsg_alloc
1938
&& *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
1939
*yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
1943
/* Avoid sprintf, as that infringes on the user's name space.
1944
Don't have undefined behavior even if the translation
1945
produced a string with the wrong number of "%s"s. */
1949
while ((*yyp = *yyformat) != '\0')
1950
if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
1952
yyp += yytnamerr (yyp, yyarg[yyi++]);
1966
1963
#endif /* YYERROR_VERBOSE */
1969
1965
/*-----------------------------------------------.
1970
1966
| Release the memory associated to this symbol. |
2319
/* Line 1806 of yacc.c */
2317
2320
#line 185 "grammar.y"
2318
{ (yyval.node) = new NullNode(); ;}
2321
{ (yyval.node) = new NullNode(); }
2326
/* Line 1806 of yacc.c */
2322
2327
#line 186 "grammar.y"
2323
{ (yyval.node) = new BooleanNode(true); ;}
2328
{ (yyval.node) = new BooleanNode(true); }
2333
/* Line 1806 of yacc.c */
2327
2334
#line 187 "grammar.y"
2328
{ (yyval.node) = new BooleanNode(false); ;}
2335
{ (yyval.node) = new BooleanNode(false); }
2340
/* Line 1806 of yacc.c */
2332
2341
#line 188 "grammar.y"
2333
{ (yyval.node) = new NumberNode((yyvsp[(1) - (1)].dval)); ;}
2342
{ (yyval.node) = new NumberNode((yyvsp[(1) - (1)].dval)); }
2347
/* Line 1806 of yacc.c */
2337
2348
#line 189 "grammar.y"
2338
{ (yyval.node) = new StringNode((yyvsp[(1) - (1)].ustr)); ;}
2349
{ (yyval.node) = new StringNode((yyvsp[(1) - (1)].ustr)); }
2354
/* Line 1806 of yacc.c */
2342
2355
#line 190 "grammar.y"
2344
2357
Lexer& l = lexer();
2345
2358
if (!l.scanRegExp())
2347
2360
(yyval.node) = new RegExpNode(l.pattern(), l.flags());
2366
/* Line 1806 of yacc.c */
2352
2367
#line 196 "grammar.y"
2354
2369
Lexer& l = lexer();
2355
2370
if (!l.scanRegExp())
2357
2372
(yyval.node) = new RegExpNode("=" + l.pattern(), l.flags());
2378
/* Line 1806 of yacc.c */
2362
2379
#line 205 "grammar.y"
2363
{ (yyval.pname) = new PropertyNameNode(*(yyvsp[(1) - (1)].ident)); ;}
2380
{ (yyval.pname) = new PropertyNameNode(*(yyvsp[(1) - (1)].ident)); }
2385
/* Line 1806 of yacc.c */
2367
2386
#line 206 "grammar.y"
2368
{ (yyval.pname) = new PropertyNameNode(Identifier(*(yyvsp[(1) - (1)].ustr))); ;}
2387
{ (yyval.pname) = new PropertyNameNode(Identifier(*(yyvsp[(1) - (1)].ustr))); }
2392
/* Line 1806 of yacc.c */
2372
2393
#line 207 "grammar.y"
2373
{ (yyval.pname) = new PropertyNameNode(Identifier(UString::from((yyvsp[(1) - (1)].dval)))); ;}
2394
{ (yyval.pname) = new PropertyNameNode(Identifier(UString::from((yyvsp[(1) - (1)].dval)))); }
2399
/* Line 1806 of yacc.c */
2377
2400
#line 211 "grammar.y"
2378
{ (yyval.pnode) = new PropertyNode((yyvsp[(1) - (3)].pname), (yyvsp[(3) - (3)].node), PropertyNode::Constant); ;}
2401
{ (yyval.pnode) = new PropertyNode((yyvsp[(1) - (3)].pname), (yyvsp[(3) - (3)].node), PropertyNode::Constant); }
2406
/* Line 1806 of yacc.c */
2382
2407
#line 212 "grammar.y"
2383
2408
{inFuncExpr();}
2413
/* Line 1806 of yacc.c */
2387
2414
#line 212 "grammar.y"
2389
2416
if (!makeGetterOrSetterPropertyNode((yyval.pnode), *(yyvsp[(1) - (6)].ident), *(yyvsp[(2) - (6)].ident), 0, (yyvsp[(6) - (6)].body)))
2423
/* Line 1806 of yacc.c */
2395
2424
#line 216 "grammar.y"
2396
2425
{inFuncExpr();}
2430
/* Line 1806 of yacc.c */
2400
2431
#line 216 "grammar.y"
2402
2433
if (!makeGetterOrSetterPropertyNode((yyval.pnode), *(yyvsp[(1) - (7)].ident), *(yyvsp[(2) - (7)].ident), (yyvsp[(4) - (7)].param), (yyvsp[(7) - (7)].body)))
2440
/* Line 1806 of yacc.c */
2408
2441
#line 223 "grammar.y"
2409
{ (yyval.plist) = new PropertyListNode((yyvsp[(1) - (1)].pnode)); ;}
2442
{ (yyval.plist) = new PropertyListNode((yyvsp[(1) - (1)].pnode)); }
2447
/* Line 1806 of yacc.c */
2413
2448
#line 224 "grammar.y"
2414
{ (yyval.plist) = new PropertyListNode((yyvsp[(3) - (3)].pnode), (yyvsp[(1) - (3)].plist)); ;}
2449
{ (yyval.plist) = new PropertyListNode((yyvsp[(3) - (3)].pnode), (yyvsp[(1) - (3)].plist)); }
2454
/* Line 1806 of yacc.c */
2418
2455
#line 229 "grammar.y"
2419
{ (yyval.node) = new ObjectLiteralNode(); ;}
2456
{ (yyval.node) = new ObjectLiteralNode(); }
2461
/* Line 1806 of yacc.c */
2423
2462
#line 230 "grammar.y"
2424
{ (yyval.node) = new ObjectLiteralNode((yyvsp[(2) - (3)].plist)); ;}
2463
{ (yyval.node) = new ObjectLiteralNode((yyvsp[(2) - (3)].plist)); }
2468
/* Line 1806 of yacc.c */
2428
2469
#line 232 "grammar.y"
2429
{ (yyval.node) = new ObjectLiteralNode((yyvsp[(2) - (4)].plist)); ;}
2470
{ (yyval.node) = new ObjectLiteralNode((yyvsp[(2) - (4)].plist)); }
2475
/* Line 1806 of yacc.c */
2433
2476
#line 236 "grammar.y"
2434
{ (yyval.node) = new ThisNode(); ;}
2477
{ (yyval.node) = new ThisNode(); }
2482
/* Line 1806 of yacc.c */
2438
2483
#line 239 "grammar.y"
2439
{ (yyval.node) = new VarAccessNode(*(yyvsp[(1) - (1)].ident)); ;}
2484
{ (yyval.node) = new VarAccessNode(*(yyvsp[(1) - (1)].ident)); }
2489
/* Line 1806 of yacc.c */
2443
2490
#line 240 "grammar.y"
2444
{ (yyval.node) = makeGroupNode((yyvsp[(2) - (3)].node)); ;}
2491
{ (yyval.node) = makeGroupNode((yyvsp[(2) - (3)].node)); }
2496
/* Line 1806 of yacc.c */
2448
2497
#line 245 "grammar.y"
2449
{ (yyval.node) = new ArrayNode((yyvsp[(2) - (3)].ival)); ;}
2498
{ (yyval.node) = new ArrayNode((yyvsp[(2) - (3)].ival)); }
2503
/* Line 1806 of yacc.c */
2453
2504
#line 246 "grammar.y"
2454
{ (yyval.node) = new ArrayNode((yyvsp[(2) - (3)].elm)); ;}
2505
{ (yyval.node) = new ArrayNode((yyvsp[(2) - (3)].elm)); }
2510
/* Line 1806 of yacc.c */
2458
2511
#line 247 "grammar.y"
2459
{ (yyval.node) = new ArrayNode((yyvsp[(4) - (5)].ival), (yyvsp[(2) - (5)].elm)); ;}
2512
{ (yyval.node) = new ArrayNode((yyvsp[(4) - (5)].ival), (yyvsp[(2) - (5)].elm)); }
2517
/* Line 1806 of yacc.c */
2463
2518
#line 251 "grammar.y"
2464
{ (yyval.elm) = new ElementNode((yyvsp[(1) - (2)].ival), (yyvsp[(2) - (2)].node)); ;}
2519
{ (yyval.elm) = new ElementNode((yyvsp[(1) - (2)].ival), (yyvsp[(2) - (2)].node)); }
2524
/* Line 1806 of yacc.c */
2468
2525
#line 253 "grammar.y"
2469
{ (yyval.elm) = new ElementNode((yyvsp[(1) - (4)].elm), (yyvsp[(3) - (4)].ival), (yyvsp[(4) - (4)].node)); ;}
2526
{ (yyval.elm) = new ElementNode((yyvsp[(1) - (4)].elm), (yyvsp[(3) - (4)].ival), (yyvsp[(4) - (4)].node)); }
2531
/* Line 1806 of yacc.c */
2473
2532
#line 257 "grammar.y"
2474
{ (yyval.ival) = 0; ;}
2533
{ (yyval.ival) = 0; }
2538
/* Line 1806 of yacc.c */
2478
2539
#line 262 "grammar.y"
2479
{ (yyval.ival) = 1; ;}
2540
{ (yyval.ival) = 1; }
2545
/* Line 1806 of yacc.c */
2483
2546
#line 263 "grammar.y"
2484
{ (yyval.ival) = (yyvsp[(1) - (2)].ival) + 1; ;}
2547
{ (yyval.ival) = (yyvsp[(1) - (2)].ival) + 1; }
2552
/* Line 1806 of yacc.c */
2488
2553
#line 268 "grammar.y"
2489
{ (yyval.node) = (yyvsp[(1) - (1)].funcExpr); ;}
2554
{ (yyval.node) = (yyvsp[(1) - (1)].funcExpr); }
2559
/* Line 1806 of yacc.c */
2493
2560
#line 269 "grammar.y"
2494
{ (yyval.node) = new BracketAccessorNode((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node)); ;}
2561
{ (yyval.node) = new BracketAccessorNode((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node)); }
2566
/* Line 1806 of yacc.c */
2498
2567
#line 270 "grammar.y"
2499
{ (yyval.node) = new DotAccessorNode((yyvsp[(1) - (3)].node), *(yyvsp[(3) - (3)].ident)); ;}
2568
{ (yyval.node) = new DotAccessorNode((yyvsp[(1) - (3)].node), *(yyvsp[(3) - (3)].ident)); }
2573
/* Line 1806 of yacc.c */
2503
2574
#line 271 "grammar.y"
2504
{ (yyval.node) = new NewExprNode((yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].args)); ;}
2575
{ (yyval.node) = new NewExprNode((yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].args)); }
2580
/* Line 1806 of yacc.c */
2508
2581
#line 276 "grammar.y"
2509
{ (yyval.node) = new BracketAccessorNode((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node)); ;}
2582
{ (yyval.node) = new BracketAccessorNode((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node)); }
2587
/* Line 1806 of yacc.c */
2513
2588
#line 277 "grammar.y"
2514
{ (yyval.node) = new DotAccessorNode((yyvsp[(1) - (3)].node), *(yyvsp[(3) - (3)].ident)); ;}
2589
{ (yyval.node) = new DotAccessorNode((yyvsp[(1) - (3)].node), *(yyvsp[(3) - (3)].ident)); }
2594
/* Line 1806 of yacc.c */
2518
2595
#line 278 "grammar.y"
2519
{ (yyval.node) = new NewExprNode((yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].args)); ;}
2596
{ (yyval.node) = new NewExprNode((yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].args)); }
2601
/* Line 1806 of yacc.c */
2523
2602
#line 283 "grammar.y"
2524
{ (yyval.node) = new NewExprNode((yyvsp[(2) - (2)].node)); ;}
2603
{ (yyval.node) = new NewExprNode((yyvsp[(2) - (2)].node)); }
2608
/* Line 1806 of yacc.c */
2528
2609
#line 288 "grammar.y"
2529
{ (yyval.node) = new NewExprNode((yyvsp[(2) - (2)].node)); ;}
2610
{ (yyval.node) = new NewExprNode((yyvsp[(2) - (2)].node)); }
2615
/* Line 1806 of yacc.c */
2533
2616
#line 292 "grammar.y"
2534
{ (yyval.node) = makeFunctionCallNode((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].args)); ;}
2617
{ (yyval.node) = makeFunctionCallNode((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].args)); }
2622
/* Line 1806 of yacc.c */
2538
2623
#line 293 "grammar.y"
2539
{ (yyval.node) = makeFunctionCallNode((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].args)); ;}
2624
{ (yyval.node) = makeFunctionCallNode((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].args)); }
2629
/* Line 1806 of yacc.c */
2543
2630
#line 294 "grammar.y"
2544
{ (yyval.node) = new BracketAccessorNode((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node)); ;}
2631
{ (yyval.node) = new BracketAccessorNode((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node)); }
2636
/* Line 1806 of yacc.c */
2548
2637
#line 295 "grammar.y"
2549
{ (yyval.node) = new DotAccessorNode((yyvsp[(1) - (3)].node), *(yyvsp[(3) - (3)].ident)); ;}
2638
{ (yyval.node) = new DotAccessorNode((yyvsp[(1) - (3)].node), *(yyvsp[(3) - (3)].ident)); }
2643
/* Line 1806 of yacc.c */
2553
2644
#line 299 "grammar.y"
2554
{ (yyval.node) = makeFunctionCallNode((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].args)); ;}
2645
{ (yyval.node) = makeFunctionCallNode((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].args)); }
2650
/* Line 1806 of yacc.c */
2558
2651
#line 300 "grammar.y"
2559
{ (yyval.node) = makeFunctionCallNode((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].args)); ;}
2652
{ (yyval.node) = makeFunctionCallNode((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].args)); }
2657
/* Line 1806 of yacc.c */
2563
2658
#line 301 "grammar.y"
2564
{ (yyval.node) = new BracketAccessorNode((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node)); ;}
2659
{ (yyval.node) = new BracketAccessorNode((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node)); }
2664
/* Line 1806 of yacc.c */
2568
2665
#line 302 "grammar.y"
2569
{ (yyval.node) = new DotAccessorNode((yyvsp[(1) - (3)].node), *(yyvsp[(3) - (3)].ident)); ;}
2666
{ (yyval.node) = new DotAccessorNode((yyvsp[(1) - (3)].node), *(yyvsp[(3) - (3)].ident)); }
2671
/* Line 1806 of yacc.c */
2573
2672
#line 306 "grammar.y"
2574
{ (yyval.args) = new ArgumentsNode(); ;}
2673
{ (yyval.args) = new ArgumentsNode(); }
2678
/* Line 1806 of yacc.c */
2578
2679
#line 307 "grammar.y"
2579
{ (yyval.args) = new ArgumentsNode((yyvsp[(2) - (3)].alist)); ;}
2680
{ (yyval.args) = new ArgumentsNode((yyvsp[(2) - (3)].alist)); }
2685
/* Line 1806 of yacc.c */
2583
2686
#line 311 "grammar.y"
2584
{ (yyval.alist) = new ArgumentListNode((yyvsp[(1) - (1)].node)); ;}
2687
{ (yyval.alist) = new ArgumentListNode((yyvsp[(1) - (1)].node)); }
2692
/* Line 1806 of yacc.c */
2588
2693
#line 312 "grammar.y"
2589
{ (yyval.alist) = new ArgumentListNode((yyvsp[(1) - (3)].alist), (yyvsp[(3) - (3)].node)); ;}
2694
{ (yyval.alist) = new ArgumentListNode((yyvsp[(1) - (3)].alist), (yyvsp[(3) - (3)].node)); }
2699
/* Line 1806 of yacc.c */
2593
2700
#line 327 "grammar.y"
2594
{ (yyval.node) = makePostfixNode((yyvsp[(1) - (2)].node), OpPlusPlus); ;}
2701
{ (yyval.node) = makePostfixNode((yyvsp[(1) - (2)].node), OpPlusPlus); }
2706
/* Line 1806 of yacc.c */
2598
2707
#line 328 "grammar.y"
2599
{ (yyval.node) = makePostfixNode((yyvsp[(1) - (2)].node), OpMinusMinus); ;}
2708
{ (yyval.node) = makePostfixNode((yyvsp[(1) - (2)].node), OpMinusMinus); }
2713
/* Line 1806 of yacc.c */
2603
2714
#line 333 "grammar.y"
2604
{ (yyval.node) = makePostfixNode((yyvsp[(1) - (2)].node), OpPlusPlus); ;}
2715
{ (yyval.node) = makePostfixNode((yyvsp[(1) - (2)].node), OpPlusPlus); }
2720
/* Line 1806 of yacc.c */
2608
2721
#line 334 "grammar.y"
2609
{ (yyval.node) = makePostfixNode((yyvsp[(1) - (2)].node), OpMinusMinus); ;}
2722
{ (yyval.node) = makePostfixNode((yyvsp[(1) - (2)].node), OpMinusMinus); }
2727
/* Line 1806 of yacc.c */
2613
2728
#line 338 "grammar.y"
2614
{ (yyval.node) = makeDeleteNode((yyvsp[(2) - (2)].node)); ;}
2729
{ (yyval.node) = makeDeleteNode((yyvsp[(2) - (2)].node)); }
2734
/* Line 1806 of yacc.c */
2618
2735
#line 339 "grammar.y"
2619
{ (yyval.node) = new VoidNode((yyvsp[(2) - (2)].node)); ;}
2736
{ (yyval.node) = new VoidNode((yyvsp[(2) - (2)].node)); }
2741
/* Line 1806 of yacc.c */
2623
2742
#line 340 "grammar.y"
2624
{ (yyval.node) = makeTypeOfNode((yyvsp[(2) - (2)].node)); ;}
2743
{ (yyval.node) = makeTypeOfNode((yyvsp[(2) - (2)].node)); }
2748
/* Line 1806 of yacc.c */
2628
2749
#line 341 "grammar.y"
2629
{ (yyval.node) = makePrefixNode((yyvsp[(2) - (2)].node), OpPlusPlus); ;}
2750
{ (yyval.node) = makePrefixNode((yyvsp[(2) - (2)].node), OpPlusPlus); }
2755
/* Line 1806 of yacc.c */
2633
2756
#line 342 "grammar.y"
2634
{ (yyval.node) = makePrefixNode((yyvsp[(2) - (2)].node), OpPlusPlus); ;}
2757
{ (yyval.node) = makePrefixNode((yyvsp[(2) - (2)].node), OpPlusPlus); }
2762
/* Line 1806 of yacc.c */
2638
2763
#line 343 "grammar.y"
2639
{ (yyval.node) = makePrefixNode((yyvsp[(2) - (2)].node), OpMinusMinus); ;}
2764
{ (yyval.node) = makePrefixNode((yyvsp[(2) - (2)].node), OpMinusMinus); }
2769
/* Line 1806 of yacc.c */
2643
2770
#line 344 "grammar.y"
2644
{ (yyval.node) = makePrefixNode((yyvsp[(2) - (2)].node), OpMinusMinus); ;}
2771
{ (yyval.node) = makePrefixNode((yyvsp[(2) - (2)].node), OpMinusMinus); }
2776
/* Line 1806 of yacc.c */
2648
2777
#line 345 "grammar.y"
2649
{ (yyval.node) = makeUnaryPlusNode((yyvsp[(2) - (2)].node)); ;}
2778
{ (yyval.node) = makeUnaryPlusNode((yyvsp[(2) - (2)].node)); }
2783
/* Line 1806 of yacc.c */
2653
2784
#line 346 "grammar.y"
2654
{ (yyval.node) = makeNegateNode((yyvsp[(2) - (2)].node)); ;}
2785
{ (yyval.node) = makeNegateNode((yyvsp[(2) - (2)].node)); }
2790
/* Line 1806 of yacc.c */
2658
2791
#line 347 "grammar.y"
2659
{ (yyval.node) = makeBitwiseNotNode((yyvsp[(2) - (2)].node)); ;}
2792
{ (yyval.node) = makeBitwiseNotNode((yyvsp[(2) - (2)].node)); }
2797
/* Line 1806 of yacc.c */
2663
2798
#line 348 "grammar.y"
2664
{ (yyval.node) = makeLogicalNotNode((yyvsp[(2) - (2)].node)); ;}
2799
{ (yyval.node) = makeLogicalNotNode((yyvsp[(2) - (2)].node)); }
2804
/* Line 1806 of yacc.c */
2668
2805
#line 362 "grammar.y"
2669
{ (yyval.node) = makeMultNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpMult); ;}
2806
{ (yyval.node) = makeMultNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpMult); }
2811
/* Line 1806 of yacc.c */
2673
2812
#line 363 "grammar.y"
2674
{ (yyval.node) = makeMultNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpDiv); ;}
2813
{ (yyval.node) = makeMultNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpDiv); }
2818
/* Line 1806 of yacc.c */
2678
2819
#line 364 "grammar.y"
2679
{ (yyval.node) = makeMultNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpMod); ;}
2820
{ (yyval.node) = makeMultNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpMod); }
2825
/* Line 1806 of yacc.c */
2683
2826
#line 370 "grammar.y"
2684
{ (yyval.node) = makeMultNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpMult); ;}
2827
{ (yyval.node) = makeMultNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpMult); }
2832
/* Line 1806 of yacc.c */
2688
2833
#line 372 "grammar.y"
2689
{ (yyval.node) = makeMultNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpDiv); ;}
2834
{ (yyval.node) = makeMultNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpDiv); }
2839
/* Line 1806 of yacc.c */
2693
2840
#line 374 "grammar.y"
2694
{ (yyval.node) = makeMultNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpMod); ;}
2841
{ (yyval.node) = makeMultNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpMod); }
2846
/* Line 1806 of yacc.c */
2698
2847
#line 379 "grammar.y"
2699
{ (yyval.node) = makeAddNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpPlus); ;}
2848
{ (yyval.node) = makeAddNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpPlus); }
2853
/* Line 1806 of yacc.c */
2703
2854
#line 380 "grammar.y"
2704
{ (yyval.node) = makeAddNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpMinus); ;}
2855
{ (yyval.node) = makeAddNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpMinus); }
2860
/* Line 1806 of yacc.c */
2708
2861
#line 386 "grammar.y"
2709
{ (yyval.node) = makeAddNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpPlus); ;}
2862
{ (yyval.node) = makeAddNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpPlus); }
2867
/* Line 1806 of yacc.c */
2713
2868
#line 388 "grammar.y"
2714
{ (yyval.node) = makeAddNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpMinus); ;}
2869
{ (yyval.node) = makeAddNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpMinus); }
2874
/* Line 1806 of yacc.c */
2718
2875
#line 393 "grammar.y"
2719
{ (yyval.node) = makeShiftNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpLShift); ;}
2876
{ (yyval.node) = makeShiftNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpLShift); }
2881
/* Line 1806 of yacc.c */
2723
2882
#line 394 "grammar.y"
2724
{ (yyval.node) = makeShiftNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpRShift); ;}
2883
{ (yyval.node) = makeShiftNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpRShift); }
2888
/* Line 1806 of yacc.c */
2728
2889
#line 395 "grammar.y"
2729
{ (yyval.node) = makeShiftNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpURShift); ;}
2890
{ (yyval.node) = makeShiftNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpURShift); }
2895
/* Line 1806 of yacc.c */
2733
2896
#line 400 "grammar.y"
2734
{ (yyval.node) = makeShiftNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpLShift); ;}
2897
{ (yyval.node) = makeShiftNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpLShift); }
2902
/* Line 1806 of yacc.c */
2738
2903
#line 401 "grammar.y"
2739
{ (yyval.node) = makeShiftNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpRShift); ;}
2904
{ (yyval.node) = makeShiftNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpRShift); }
2909
/* Line 1806 of yacc.c */
2743
2910
#line 402 "grammar.y"
2744
{ (yyval.node) = makeShiftNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpURShift); ;}
2911
{ (yyval.node) = makeShiftNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), OpURShift); }
2916
/* Line 1806 of yacc.c */
2748
2917
#line 407 "grammar.y"
2749
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpLess, (yyvsp[(3) - (3)].node)); ;}
2918
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpLess, (yyvsp[(3) - (3)].node)); }
2923
/* Line 1806 of yacc.c */
2753
2924
#line 408 "grammar.y"
2754
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpGreater, (yyvsp[(3) - (3)].node)); ;}
2925
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpGreater, (yyvsp[(3) - (3)].node)); }
2930
/* Line 1806 of yacc.c */
2758
2931
#line 409 "grammar.y"
2759
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpLessEq, (yyvsp[(3) - (3)].node)); ;}
2932
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpLessEq, (yyvsp[(3) - (3)].node)); }
2937
/* Line 1806 of yacc.c */
2763
2938
#line 410 "grammar.y"
2764
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpGreaterEq, (yyvsp[(3) - (3)].node)); ;}
2939
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpGreaterEq, (yyvsp[(3) - (3)].node)); }
2944
/* Line 1806 of yacc.c */
2768
2945
#line 411 "grammar.y"
2769
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpInstanceOf, (yyvsp[(3) - (3)].node)); ;}
2946
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpInstanceOf, (yyvsp[(3) - (3)].node)); }
2951
/* Line 1806 of yacc.c */
2773
2952
#line 412 "grammar.y"
2774
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpIn, (yyvsp[(3) - (3)].node)); ;}
2953
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpIn, (yyvsp[(3) - (3)].node)); }
2958
/* Line 1806 of yacc.c */
2778
2959
#line 417 "grammar.y"
2779
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpLess, (yyvsp[(3) - (3)].node)); ;}
2960
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpLess, (yyvsp[(3) - (3)].node)); }
2965
/* Line 1806 of yacc.c */
2783
2966
#line 418 "grammar.y"
2784
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpGreater, (yyvsp[(3) - (3)].node)); ;}
2967
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpGreater, (yyvsp[(3) - (3)].node)); }
2972
/* Line 1806 of yacc.c */
2788
2973
#line 419 "grammar.y"
2789
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpLessEq, (yyvsp[(3) - (3)].node)); ;}
2974
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpLessEq, (yyvsp[(3) - (3)].node)); }
2979
/* Line 1806 of yacc.c */
2793
2980
#line 420 "grammar.y"
2794
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpGreaterEq, (yyvsp[(3) - (3)].node)); ;}
2981
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpGreaterEq, (yyvsp[(3) - (3)].node)); }
2986
/* Line 1806 of yacc.c */
2798
2987
#line 422 "grammar.y"
2799
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpInstanceOf, (yyvsp[(3) - (3)].node)); ;}
2988
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpInstanceOf, (yyvsp[(3) - (3)].node)); }
2993
/* Line 1806 of yacc.c */
2803
2994
#line 427 "grammar.y"
2804
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpLess, (yyvsp[(3) - (3)].node)); ;}
2995
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpLess, (yyvsp[(3) - (3)].node)); }
3000
/* Line 1806 of yacc.c */
2808
3001
#line 428 "grammar.y"
2809
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpGreater, (yyvsp[(3) - (3)].node)); ;}
3002
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpGreater, (yyvsp[(3) - (3)].node)); }
3007
/* Line 1806 of yacc.c */
2813
3008
#line 429 "grammar.y"
2814
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpLessEq, (yyvsp[(3) - (3)].node)); ;}
3009
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpLessEq, (yyvsp[(3) - (3)].node)); }
3014
/* Line 1806 of yacc.c */
2818
3015
#line 430 "grammar.y"
2819
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpGreaterEq, (yyvsp[(3) - (3)].node)); ;}
3016
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpGreaterEq, (yyvsp[(3) - (3)].node)); }
3021
/* Line 1806 of yacc.c */
2823
3022
#line 432 "grammar.y"
2824
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpInstanceOf, (yyvsp[(3) - (3)].node)); ;}
3023
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpInstanceOf, (yyvsp[(3) - (3)].node)); }
3028
/* Line 1806 of yacc.c */
2828
3029
#line 433 "grammar.y"
2829
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpIn, (yyvsp[(3) - (3)].node)); ;}
3030
{ (yyval.node) = makeRelationalNode((yyvsp[(1) - (3)].node), OpIn, (yyvsp[(3) - (3)].node)); }
3035
/* Line 1806 of yacc.c */
2833
3036
#line 438 "grammar.y"
2834
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpEqEq, (yyvsp[(3) - (3)].node)); ;}
3037
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpEqEq, (yyvsp[(3) - (3)].node)); }
3042
/* Line 1806 of yacc.c */
2838
3043
#line 439 "grammar.y"
2839
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpNotEq, (yyvsp[(3) - (3)].node)); ;}
3044
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpNotEq, (yyvsp[(3) - (3)].node)); }
3049
/* Line 1806 of yacc.c */
2843
3050
#line 440 "grammar.y"
2844
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpStrEq, (yyvsp[(3) - (3)].node)); ;}
3051
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpStrEq, (yyvsp[(3) - (3)].node)); }
3056
/* Line 1806 of yacc.c */
2848
3057
#line 441 "grammar.y"
2849
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpStrNEq, (yyvsp[(3) - (3)].node));;}
3058
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpStrNEq, (yyvsp[(3) - (3)].node));}
3063
/* Line 1806 of yacc.c */
2853
3064
#line 447 "grammar.y"
2854
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpEqEq, (yyvsp[(3) - (3)].node)); ;}
3065
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpEqEq, (yyvsp[(3) - (3)].node)); }
3070
/* Line 1806 of yacc.c */
2858
3071
#line 449 "grammar.y"
2859
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpNotEq, (yyvsp[(3) - (3)].node)); ;}
3072
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpNotEq, (yyvsp[(3) - (3)].node)); }
3077
/* Line 1806 of yacc.c */
2863
3078
#line 451 "grammar.y"
2864
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpStrEq, (yyvsp[(3) - (3)].node)); ;}
3079
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpStrEq, (yyvsp[(3) - (3)].node)); }
3084
/* Line 1806 of yacc.c */
2868
3085
#line 453 "grammar.y"
2869
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpStrNEq, (yyvsp[(3) - (3)].node));;}
3086
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpStrNEq, (yyvsp[(3) - (3)].node));}
3091
/* Line 1806 of yacc.c */
2873
3092
#line 459 "grammar.y"
2874
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpEqEq, (yyvsp[(3) - (3)].node)); ;}
3093
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpEqEq, (yyvsp[(3) - (3)].node)); }
3098
/* Line 1806 of yacc.c */
2878
3099
#line 460 "grammar.y"
2879
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpNotEq, (yyvsp[(3) - (3)].node)); ;}
3100
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpNotEq, (yyvsp[(3) - (3)].node)); }
3105
/* Line 1806 of yacc.c */
2883
3106
#line 462 "grammar.y"
2884
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpStrEq, (yyvsp[(3) - (3)].node)); ;}
3107
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpStrEq, (yyvsp[(3) - (3)].node)); }
3112
/* Line 1806 of yacc.c */
2888
3113
#line 464 "grammar.y"
2889
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpStrNEq, (yyvsp[(3) - (3)].node));;}
3114
{ (yyval.node) = makeEqualNode((yyvsp[(1) - (3)].node), OpStrNEq, (yyvsp[(3) - (3)].node));}
3119
/* Line 1806 of yacc.c */
2893
3120
#line 469 "grammar.y"
2894
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitAnd, (yyvsp[(3) - (3)].node)); ;}
3121
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitAnd, (yyvsp[(3) - (3)].node)); }
3126
/* Line 1806 of yacc.c */
2898
3127
#line 475 "grammar.y"
2899
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitAnd, (yyvsp[(3) - (3)].node)); ;}
3128
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitAnd, (yyvsp[(3) - (3)].node)); }
3133
/* Line 1806 of yacc.c */
2903
3134
#line 480 "grammar.y"
2904
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitAnd, (yyvsp[(3) - (3)].node)); ;}
3135
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitAnd, (yyvsp[(3) - (3)].node)); }
3140
/* Line 1806 of yacc.c */
2908
3141
#line 485 "grammar.y"
2909
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitXOr, (yyvsp[(3) - (3)].node)); ;}
3142
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitXOr, (yyvsp[(3) - (3)].node)); }
3147
/* Line 1806 of yacc.c */
2913
3148
#line 491 "grammar.y"
2914
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitXOr, (yyvsp[(3) - (3)].node)); ;}
3149
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitXOr, (yyvsp[(3) - (3)].node)); }
3154
/* Line 1806 of yacc.c */
2918
3155
#line 497 "grammar.y"
2919
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitXOr, (yyvsp[(3) - (3)].node)); ;}
3156
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitXOr, (yyvsp[(3) - (3)].node)); }
3161
/* Line 1806 of yacc.c */
2923
3162
#line 502 "grammar.y"
2924
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitOr, (yyvsp[(3) - (3)].node)); ;}
3163
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitOr, (yyvsp[(3) - (3)].node)); }
3168
/* Line 1806 of yacc.c */
2928
3169
#line 508 "grammar.y"
2929
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitOr, (yyvsp[(3) - (3)].node)); ;}
3170
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitOr, (yyvsp[(3) - (3)].node)); }
3175
/* Line 1806 of yacc.c */
2933
3176
#line 514 "grammar.y"
2934
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitOr, (yyvsp[(3) - (3)].node)); ;}
3177
{ (yyval.node) = makeBitOperNode((yyvsp[(1) - (3)].node), OpBitOr, (yyvsp[(3) - (3)].node)); }
3182
/* Line 1806 of yacc.c */
2938
3183
#line 519 "grammar.y"
2939
{ (yyval.node) = makeBinaryLogicalNode((yyvsp[(1) - (3)].node), OpAnd, (yyvsp[(3) - (3)].node)); ;}
3184
{ (yyval.node) = makeBinaryLogicalNode((yyvsp[(1) - (3)].node), OpAnd, (yyvsp[(3) - (3)].node)); }
3189
/* Line 1806 of yacc.c */
2943
3190
#line 525 "grammar.y"
2944
{ (yyval.node) = makeBinaryLogicalNode((yyvsp[(1) - (3)].node), OpAnd, (yyvsp[(3) - (3)].node)); ;}
3191
{ (yyval.node) = makeBinaryLogicalNode((yyvsp[(1) - (3)].node), OpAnd, (yyvsp[(3) - (3)].node)); }
3196
/* Line 1806 of yacc.c */
2948
3197
#line 531 "grammar.y"
2949
{ (yyval.node) = makeBinaryLogicalNode((yyvsp[(1) - (3)].node), OpAnd, (yyvsp[(3) - (3)].node)); ;}
3198
{ (yyval.node) = makeBinaryLogicalNode((yyvsp[(1) - (3)].node), OpAnd, (yyvsp[(3) - (3)].node)); }
3203
/* Line 1806 of yacc.c */
2953
3204
#line 536 "grammar.y"
2954
{ (yyval.node) = makeBinaryLogicalNode((yyvsp[(1) - (3)].node), OpOr, (yyvsp[(3) - (3)].node)); ;}
3205
{ (yyval.node) = makeBinaryLogicalNode((yyvsp[(1) - (3)].node), OpOr, (yyvsp[(3) - (3)].node)); }
3210
/* Line 1806 of yacc.c */
2958
3211
#line 542 "grammar.y"
2959
{ (yyval.node) = makeBinaryLogicalNode((yyvsp[(1) - (3)].node), OpOr, (yyvsp[(3) - (3)].node)); ;}
3212
{ (yyval.node) = makeBinaryLogicalNode((yyvsp[(1) - (3)].node), OpOr, (yyvsp[(3) - (3)].node)); }
3217
/* Line 1806 of yacc.c */
2963
3218
#line 547 "grammar.y"
2964
{ (yyval.node) = makeBinaryLogicalNode((yyvsp[(1) - (3)].node), OpOr, (yyvsp[(3) - (3)].node)); ;}
3219
{ (yyval.node) = makeBinaryLogicalNode((yyvsp[(1) - (3)].node), OpOr, (yyvsp[(3) - (3)].node)); }
3224
/* Line 1806 of yacc.c */
2968
3225
#line 553 "grammar.y"
2969
{ (yyval.node) = makeConditionalNode((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)); ;}
3226
{ (yyval.node) = makeConditionalNode((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)); }
3231
/* Line 1806 of yacc.c */
2973
3232
#line 559 "grammar.y"
2974
{ (yyval.node) = makeConditionalNode((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)); ;}
3233
{ (yyval.node) = makeConditionalNode((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)); }
3238
/* Line 1806 of yacc.c */
2978
3239
#line 565 "grammar.y"
2979
{ (yyval.node) = makeConditionalNode((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)); ;}
3240
{ (yyval.node) = makeConditionalNode((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)); }
3245
/* Line 1806 of yacc.c */
2983
3246
#line 571 "grammar.y"
2984
{ (yyval.node) = makeAssignNode((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].op), (yyvsp[(3) - (3)].node)); ;}
3247
{ (yyval.node) = makeAssignNode((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].op), (yyvsp[(3) - (3)].node)); }
3252
/* Line 1806 of yacc.c */
2988
3253
#line 577 "grammar.y"
2989
{ (yyval.node) = makeAssignNode((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].op), (yyvsp[(3) - (3)].node)); ;}
3254
{ (yyval.node) = makeAssignNode((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].op), (yyvsp[(3) - (3)].node)); }
3259
/* Line 1806 of yacc.c */
2993
3260
#line 583 "grammar.y"
2994
{ (yyval.node) = makeAssignNode((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].op), (yyvsp[(3) - (3)].node)); ;}
3261
{ (yyval.node) = makeAssignNode((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].op), (yyvsp[(3) - (3)].node)); }
3266
/* Line 1806 of yacc.c */
2998
3267
#line 587 "grammar.y"
2999
{ (yyval.op) = OpEqual; ;}
3268
{ (yyval.op) = OpEqual; }
3273
/* Line 1806 of yacc.c */
3003
3274
#line 588 "grammar.y"
3004
{ (yyval.op) = OpPlusEq; ;}
3275
{ (yyval.op) = OpPlusEq; }
3280
/* Line 1806 of yacc.c */
3008
3281
#line 589 "grammar.y"
3009
{ (yyval.op) = OpMinusEq; ;}
3282
{ (yyval.op) = OpMinusEq; }
3287
/* Line 1806 of yacc.c */
3013
3288
#line 590 "grammar.y"
3014
{ (yyval.op) = OpMultEq; ;}
3289
{ (yyval.op) = OpMultEq; }
3294
/* Line 1806 of yacc.c */
3018
3295
#line 591 "grammar.y"
3019
{ (yyval.op) = OpDivEq; ;}
3296
{ (yyval.op) = OpDivEq; }
3301
/* Line 1806 of yacc.c */
3023
3302
#line 592 "grammar.y"
3024
{ (yyval.op) = OpLShift; ;}
3303
{ (yyval.op) = OpLShift; }
3308
/* Line 1806 of yacc.c */
3028
3309
#line 593 "grammar.y"
3029
{ (yyval.op) = OpRShift; ;}
3310
{ (yyval.op) = OpRShift; }
3315
/* Line 1806 of yacc.c */
3033
3316
#line 594 "grammar.y"
3034
{ (yyval.op) = OpURShift; ;}
3317
{ (yyval.op) = OpURShift; }
3322
/* Line 1806 of yacc.c */
3038
3323
#line 595 "grammar.y"
3039
{ (yyval.op) = OpAndEq; ;}
3324
{ (yyval.op) = OpAndEq; }
3329
/* Line 1806 of yacc.c */
3043
3330
#line 596 "grammar.y"
3044
{ (yyval.op) = OpXOrEq; ;}
3331
{ (yyval.op) = OpXOrEq; }
3336
/* Line 1806 of yacc.c */
3048
3337
#line 597 "grammar.y"
3049
{ (yyval.op) = OpOrEq; ;}
3338
{ (yyval.op) = OpOrEq; }
3343
/* Line 1806 of yacc.c */
3053
3344
#line 598 "grammar.y"
3054
{ (yyval.op) = OpModEq; ;}
3345
{ (yyval.op) = OpModEq; }
3350
/* Line 1806 of yacc.c */
3058
3351
#line 603 "grammar.y"
3059
{ (yyval.node) = new CommaNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); ;}
3352
{ (yyval.node) = new CommaNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); }
3357
/* Line 1806 of yacc.c */
3063
3358
#line 608 "grammar.y"
3064
{ (yyval.node) = new CommaNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); ;}
3359
{ (yyval.node) = new CommaNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); }
3364
/* Line 1806 of yacc.c */
3068
3365
#line 613 "grammar.y"
3069
{ (yyval.node) = new CommaNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); ;}
3366
{ (yyval.node) = new CommaNode((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); }
3371
/* Line 1806 of yacc.c */
3073
3372
#line 637 "grammar.y"
3074
{ (yyval.stat) = new BlockNode(0); DBG((yyval.stat), (yylsp[(2) - (2)]), (yylsp[(2) - (2)])); ;}
3373
{ (yyval.stat) = new BlockNode(0); DBG((yyval.stat), (yylsp[(2) - (2)]), (yylsp[(2) - (2)])); }
3378
/* Line 1806 of yacc.c */
3078
3379
#line 638 "grammar.y"
3079
{ (yyval.stat) = new BlockNode((yyvsp[(2) - (3)].srcs)); DBG((yyval.stat), (yylsp[(3) - (3)]), (yylsp[(3) - (3)])); ;}
3380
{ (yyval.stat) = new BlockNode((yyvsp[(2) - (3)].srcs)); DBG((yyval.stat), (yylsp[(3) - (3)]), (yylsp[(3) - (3)])); }
3385
/* Line 1806 of yacc.c */
3083
3386
#line 642 "grammar.y"
3084
{ (yyval.stat) = new VarStatementNode((yyvsp[(2) - (3)].vlist)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); ;}
3387
{ (yyval.stat) = new VarStatementNode((yyvsp[(2) - (3)].vlist)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); }
3392
/* Line 1806 of yacc.c */
3088
3393
#line 643 "grammar.y"
3089
{ (yyval.stat) = new VarStatementNode((yyvsp[(2) - (3)].vlist)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(2) - (3)])); AUTO_SEMICOLON; ;}
3394
{ (yyval.stat) = new VarStatementNode((yyvsp[(2) - (3)].vlist)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(2) - (3)])); AUTO_SEMICOLON; }
3399
/* Line 1806 of yacc.c */
3093
3400
#line 647 "grammar.y"
3094
{ (yyval.vlist) = new VarDeclListNode((yyvsp[(1) - (1)].decl)); ;}
3401
{ (yyval.vlist) = new VarDeclListNode((yyvsp[(1) - (1)].decl)); }
3406
/* Line 1806 of yacc.c */
3098
3407
#line 649 "grammar.y"
3099
{ (yyval.vlist) = new VarDeclListNode((yyvsp[(1) - (3)].vlist), (yyvsp[(3) - (3)].decl)); ;}
3408
{ (yyval.vlist) = new VarDeclListNode((yyvsp[(1) - (3)].vlist), (yyvsp[(3) - (3)].decl)); }
3413
/* Line 1806 of yacc.c */
3103
3414
#line 653 "grammar.y"
3104
{ (yyval.vlist) = new VarDeclListNode((yyvsp[(1) - (1)].decl)); ;}
3415
{ (yyval.vlist) = new VarDeclListNode((yyvsp[(1) - (1)].decl)); }
3420
/* Line 1806 of yacc.c */
3108
3421
#line 655 "grammar.y"
3109
{ (yyval.vlist) = new VarDeclListNode((yyvsp[(1) - (3)].vlist), (yyvsp[(3) - (3)].decl)); ;}
3422
{ (yyval.vlist) = new VarDeclListNode((yyvsp[(1) - (3)].vlist), (yyvsp[(3) - (3)].decl)); }
3427
/* Line 1806 of yacc.c */
3113
3428
#line 659 "grammar.y"
3114
{ (yyval.decl) = new VarDeclNode(*(yyvsp[(1) - (1)].ident), 0, VarDeclNode::Variable); ;}
3429
{ (yyval.decl) = new VarDeclNode(*(yyvsp[(1) - (1)].ident), 0, VarDeclNode::Variable); }
3434
/* Line 1806 of yacc.c */
3118
3435
#line 660 "grammar.y"
3119
{ (yyval.decl) = new VarDeclNode(*(yyvsp[(1) - (2)].ident), (yyvsp[(2) - (2)].init), VarDeclNode::Variable); ;}
3436
{ (yyval.decl) = new VarDeclNode(*(yyvsp[(1) - (2)].ident), (yyvsp[(2) - (2)].init), VarDeclNode::Variable); }
3441
/* Line 1806 of yacc.c */
3123
3442
#line 664 "grammar.y"
3124
{ (yyval.decl) = new VarDeclNode(*(yyvsp[(1) - (1)].ident), 0, VarDeclNode::Variable); ;}
3443
{ (yyval.decl) = new VarDeclNode(*(yyvsp[(1) - (1)].ident), 0, VarDeclNode::Variable); }
3448
/* Line 1806 of yacc.c */
3128
3449
#line 665 "grammar.y"
3129
{ (yyval.decl) = new VarDeclNode(*(yyvsp[(1) - (2)].ident), (yyvsp[(2) - (2)].init), VarDeclNode::Variable); ;}
3450
{ (yyval.decl) = new VarDeclNode(*(yyvsp[(1) - (2)].ident), (yyvsp[(2) - (2)].init), VarDeclNode::Variable); }
3455
/* Line 1806 of yacc.c */
3133
3456
#line 669 "grammar.y"
3134
{ (yyval.stat) = new VarStatementNode((yyvsp[(2) - (3)].vlist)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); ;}
3457
{ (yyval.stat) = new VarStatementNode((yyvsp[(2) - (3)].vlist)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); }
3462
/* Line 1806 of yacc.c */
3138
3463
#line 671 "grammar.y"
3139
{ (yyval.stat) = new VarStatementNode((yyvsp[(2) - (3)].vlist)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(2) - (3)])); AUTO_SEMICOLON; ;}
3464
{ (yyval.stat) = new VarStatementNode((yyvsp[(2) - (3)].vlist)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(2) - (3)])); AUTO_SEMICOLON; }
3469
/* Line 1806 of yacc.c */
3143
3470
#line 675 "grammar.y"
3144
{ (yyval.vlist) = new VarDeclListNode((yyvsp[(1) - (1)].decl)); ;}
3471
{ (yyval.vlist) = new VarDeclListNode((yyvsp[(1) - (1)].decl)); }
3476
/* Line 1806 of yacc.c */
3148
3477
#line 677 "grammar.y"
3149
{ (yyval.vlist) = new VarDeclListNode((yyvsp[(1) - (3)].vlist), (yyvsp[(3) - (3)].decl)); ;}
3478
{ (yyval.vlist) = new VarDeclListNode((yyvsp[(1) - (3)].vlist), (yyvsp[(3) - (3)].decl)); }
3483
/* Line 1806 of yacc.c */
3153
3484
#line 681 "grammar.y"
3154
{ (yyval.decl) = new VarDeclNode(*(yyvsp[(1) - (1)].ident), 0, VarDeclNode::Constant); ;}
3485
{ (yyval.decl) = new VarDeclNode(*(yyvsp[(1) - (1)].ident), 0, VarDeclNode::Constant); }
3490
/* Line 1806 of yacc.c */
3158
3491
#line 682 "grammar.y"
3159
{ (yyval.decl) = new VarDeclNode(*(yyvsp[(1) - (2)].ident), (yyvsp[(2) - (2)].init), VarDeclNode::Constant); ;}
3492
{ (yyval.decl) = new VarDeclNode(*(yyvsp[(1) - (2)].ident), (yyvsp[(2) - (2)].init), VarDeclNode::Constant); }
3497
/* Line 1806 of yacc.c */
3163
3498
#line 686 "grammar.y"
3164
{ (yyval.init) = new AssignExprNode((yyvsp[(2) - (2)].node)); ;}
3499
{ (yyval.init) = new AssignExprNode((yyvsp[(2) - (2)].node)); }
3504
/* Line 1806 of yacc.c */
3168
3505
#line 690 "grammar.y"
3169
{ (yyval.init) = new AssignExprNode((yyvsp[(2) - (2)].node)); ;}
3506
{ (yyval.init) = new AssignExprNode((yyvsp[(2) - (2)].node)); }
3511
/* Line 1806 of yacc.c */
3173
3512
#line 694 "grammar.y"
3174
{ (yyval.stat) = new EmptyStatementNode(); ;}
3513
{ (yyval.stat) = new EmptyStatementNode(); }
3518
/* Line 1806 of yacc.c */
3178
3519
#line 698 "grammar.y"
3179
{ (yyval.stat) = new ExprStatementNode((yyvsp[(1) - (2)].node)); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(2) - (2)])); ;}
3520
{ (yyval.stat) = new ExprStatementNode((yyvsp[(1) - (2)].node)); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(2) - (2)])); }
3525
/* Line 1806 of yacc.c */
3183
3526
#line 699 "grammar.y"
3184
{ (yyval.stat) = new ExprStatementNode((yyvsp[(1) - (2)].node)); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(1) - (2)])); AUTO_SEMICOLON; ;}
3527
{ (yyval.stat) = new ExprStatementNode((yyvsp[(1) - (2)].node)); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(1) - (2)])); AUTO_SEMICOLON; }
3532
/* Line 1806 of yacc.c */
3188
3533
#line 704 "grammar.y"
3189
{ (yyval.stat) = makeIfNode((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].stat), 0); DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(4) - (5)])); ;}
3534
{ (yyval.stat) = makeIfNode((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].stat), 0); DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(4) - (5)])); }
3539
/* Line 1806 of yacc.c */
3193
3540
#line 706 "grammar.y"
3194
{ (yyval.stat) = makeIfNode((yyvsp[(3) - (7)].node), (yyvsp[(5) - (7)].stat), (yyvsp[(7) - (7)].stat)); DBG((yyval.stat), (yylsp[(1) - (7)]), (yylsp[(4) - (7)])); ;}
3541
{ (yyval.stat) = makeIfNode((yyvsp[(3) - (7)].node), (yyvsp[(5) - (7)].stat), (yyvsp[(7) - (7)].stat)); DBG((yyval.stat), (yylsp[(1) - (7)]), (yylsp[(4) - (7)])); }
3546
/* Line 1806 of yacc.c */
3198
3547
#line 710 "grammar.y"
3199
{ (yyval.stat) = new DoWhileNode((yyvsp[(2) - (7)].stat), (yyvsp[(5) - (7)].node)); DBG((yyval.stat), (yylsp[(1) - (7)]), (yylsp[(3) - (7)]));;}
3548
{ (yyval.stat) = new DoWhileNode((yyvsp[(2) - (7)].stat), (yyvsp[(5) - (7)].node)); DBG((yyval.stat), (yylsp[(1) - (7)]), (yylsp[(3) - (7)]));}
3553
/* Line 1806 of yacc.c */
3203
3554
#line 711 "grammar.y"
3204
{ (yyval.stat) = new DoWhileNode((yyvsp[(2) - (6)].stat), (yyvsp[(5) - (6)].node)); DBG((yyval.stat), (yylsp[(1) - (6)]), (yylsp[(3) - (6)])); ;}
3555
{ (yyval.stat) = new DoWhileNode((yyvsp[(2) - (6)].stat), (yyvsp[(5) - (6)].node)); DBG((yyval.stat), (yylsp[(1) - (6)]), (yylsp[(3) - (6)])); }
3560
/* Line 1806 of yacc.c */
3208
3561
#line 712 "grammar.y"
3209
{ (yyval.stat) = new WhileNode((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].stat)); DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(4) - (5)])); ;}
3562
{ (yyval.stat) = new WhileNode((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].stat)); DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(4) - (5)])); }
3567
/* Line 1806 of yacc.c */
3213
3568
#line 714 "grammar.y"
3214
{ (yyval.stat) = new ForNode((yyvsp[(3) - (9)].node), (yyvsp[(5) - (9)].node), (yyvsp[(7) - (9)].node), (yyvsp[(9) - (9)].stat)); DBG((yyval.stat), (yylsp[(1) - (9)]), (yylsp[(8) - (9)])); ;}
3569
{ (yyval.stat) = new ForNode((yyvsp[(3) - (9)].node), (yyvsp[(5) - (9)].node), (yyvsp[(7) - (9)].node), (yyvsp[(9) - (9)].stat)); DBG((yyval.stat), (yylsp[(1) - (9)]), (yylsp[(8) - (9)])); }
3574
/* Line 1806 of yacc.c */
3218
3575
#line 716 "grammar.y"
3219
{ (yyval.stat) = new ForNode((yyvsp[(4) - (10)].vlist), (yyvsp[(6) - (10)].node), (yyvsp[(8) - (10)].node), (yyvsp[(10) - (10)].stat)); DBG((yyval.stat), (yylsp[(1) - (10)]), (yylsp[(9) - (10)])); ;}
3576
{ (yyval.stat) = new ForNode((yyvsp[(4) - (10)].vlist), (yyvsp[(6) - (10)].node), (yyvsp[(8) - (10)].node), (yyvsp[(10) - (10)].stat)); DBG((yyval.stat), (yylsp[(1) - (10)]), (yylsp[(9) - (10)])); }
3581
/* Line 1806 of yacc.c */
3223
3582
#line 718 "grammar.y"
3225
3584
Node *n = (yyvsp[(3) - (7)].node)->nodeInsideAllParens();
3228
3587
(yyval.stat) = new ForInNode(n, (yyvsp[(5) - (7)].node), (yyvsp[(7) - (7)].stat));
3229
3588
DBG((yyval.stat), (yylsp[(1) - (7)]), (yylsp[(6) - (7)]));
3594
/* Line 1806 of yacc.c */
3234
3595
#line 726 "grammar.y"
3235
{ (yyval.stat) = new ForInNode(*(yyvsp[(4) - (8)].ident), 0, (yyvsp[(6) - (8)].node), (yyvsp[(8) - (8)].stat)); DBG((yyval.stat), (yylsp[(1) - (8)]), (yylsp[(7) - (8)])); ;}
3596
{ (yyval.stat) = new ForInNode(*(yyvsp[(4) - (8)].ident), 0, (yyvsp[(6) - (8)].node), (yyvsp[(8) - (8)].stat)); DBG((yyval.stat), (yylsp[(1) - (8)]), (yylsp[(7) - (8)])); }
3601
/* Line 1806 of yacc.c */
3239
3602
#line 728 "grammar.y"
3240
{ (yyval.stat) = new ForInNode(*(yyvsp[(4) - (9)].ident), (yyvsp[(5) - (9)].init), (yyvsp[(7) - (9)].node), (yyvsp[(9) - (9)].stat)); DBG((yyval.stat), (yylsp[(1) - (9)]), (yylsp[(8) - (9)])); ;}
3603
{ (yyval.stat) = new ForInNode(*(yyvsp[(4) - (9)].ident), (yyvsp[(5) - (9)].init), (yyvsp[(7) - (9)].node), (yyvsp[(9) - (9)].stat)); DBG((yyval.stat), (yylsp[(1) - (9)]), (yylsp[(8) - (9)])); }
3608
/* Line 1806 of yacc.c */
3244
3609
#line 732 "grammar.y"
3245
{ (yyval.node) = 0; ;}
3610
{ (yyval.node) = 0; }
3615
/* Line 1806 of yacc.c */
3249
3616
#line 737 "grammar.y"
3250
{ (yyval.node) = 0; ;}
3617
{ (yyval.node) = 0; }
3622
/* Line 1806 of yacc.c */
3254
3623
#line 742 "grammar.y"
3255
{ (yyval.stat) = new ContinueNode(); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(2) - (2)])); ;}
3624
{ (yyval.stat) = new ContinueNode(); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(2) - (2)])); }
3629
/* Line 1806 of yacc.c */
3259
3630
#line 743 "grammar.y"
3260
{ (yyval.stat) = new ContinueNode(); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(1) - (2)])); AUTO_SEMICOLON; ;}
3631
{ (yyval.stat) = new ContinueNode(); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(1) - (2)])); AUTO_SEMICOLON; }
3636
/* Line 1806 of yacc.c */
3264
3637
#line 744 "grammar.y"
3265
{ (yyval.stat) = new ContinueNode(*(yyvsp[(2) - (3)].ident)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); ;}
3638
{ (yyval.stat) = new ContinueNode(*(yyvsp[(2) - (3)].ident)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); }
3643
/* Line 1806 of yacc.c */
3269
3644
#line 745 "grammar.y"
3270
{ (yyval.stat) = new ContinueNode(*(yyvsp[(2) - (3)].ident)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(2) - (3)])); AUTO_SEMICOLON; ;}
3645
{ (yyval.stat) = new ContinueNode(*(yyvsp[(2) - (3)].ident)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(2) - (3)])); AUTO_SEMICOLON; }
3650
/* Line 1806 of yacc.c */
3274
3651
#line 749 "grammar.y"
3275
{ (yyval.stat) = new BreakNode(); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(2) - (2)])); ;}
3652
{ (yyval.stat) = new BreakNode(); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(2) - (2)])); }
3657
/* Line 1806 of yacc.c */
3279
3658
#line 750 "grammar.y"
3280
{ (yyval.stat) = new BreakNode(); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(1) - (2)])); AUTO_SEMICOLON; ;}
3659
{ (yyval.stat) = new BreakNode(); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(1) - (2)])); AUTO_SEMICOLON; }
3664
/* Line 1806 of yacc.c */
3284
3665
#line 751 "grammar.y"
3285
{ (yyval.stat) = new BreakNode(*(yyvsp[(2) - (3)].ident)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); ;}
3666
{ (yyval.stat) = new BreakNode(*(yyvsp[(2) - (3)].ident)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); }
3671
/* Line 1806 of yacc.c */
3289
3672
#line 752 "grammar.y"
3290
{ (yyval.stat) = new BreakNode(*(yyvsp[(2) - (3)].ident)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(2) - (3)])); AUTO_SEMICOLON; ;}
3673
{ (yyval.stat) = new BreakNode(*(yyvsp[(2) - (3)].ident)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(2) - (3)])); AUTO_SEMICOLON; }
3678
/* Line 1806 of yacc.c */
3294
3679
#line 756 "grammar.y"
3295
{ (yyval.stat) = new ReturnNode(0); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(2) - (2)])); ;}
3680
{ (yyval.stat) = new ReturnNode(0); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(2) - (2)])); }
3685
/* Line 1806 of yacc.c */
3299
3686
#line 757 "grammar.y"
3300
{ (yyval.stat) = new ReturnNode(0); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(1) - (2)])); AUTO_SEMICOLON; ;}
3687
{ (yyval.stat) = new ReturnNode(0); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(1) - (2)])); AUTO_SEMICOLON; }
3692
/* Line 1806 of yacc.c */
3304
3693
#line 758 "grammar.y"
3305
{ (yyval.stat) = new ReturnNode((yyvsp[(2) - (3)].node)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); ;}
3694
{ (yyval.stat) = new ReturnNode((yyvsp[(2) - (3)].node)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); }
3699
/* Line 1806 of yacc.c */
3309
3700
#line 759 "grammar.y"
3310
{ (yyval.stat) = new ReturnNode((yyvsp[(2) - (3)].node)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(2) - (3)])); AUTO_SEMICOLON; ;}
3701
{ (yyval.stat) = new ReturnNode((yyvsp[(2) - (3)].node)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(2) - (3)])); AUTO_SEMICOLON; }
3706
/* Line 1806 of yacc.c */
3314
3707
#line 763 "grammar.y"
3315
{ (yyval.stat) = new WithNode((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].stat)); DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(4) - (5)])); ;}
3708
{ (yyval.stat) = new WithNode((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].stat)); DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(4) - (5)])); }
3713
/* Line 1806 of yacc.c */
3319
3714
#line 767 "grammar.y"
3320
{ (yyval.stat) = new SwitchNode((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].cblk)); DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(4) - (5)])); ;}
3715
{ (yyval.stat) = new SwitchNode((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].cblk)); DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(4) - (5)])); }
3720
/* Line 1806 of yacc.c */
3324
3721
#line 771 "grammar.y"
3325
{ (yyval.cblk) = new CaseBlockNode((yyvsp[(2) - (3)].clist), 0, 0); ;}
3722
{ (yyval.cblk) = new CaseBlockNode((yyvsp[(2) - (3)].clist), 0, 0); }
3727
/* Line 1806 of yacc.c */
3329
3728
#line 773 "grammar.y"
3330
{ (yyval.cblk) = new CaseBlockNode((yyvsp[(2) - (5)].clist), (yyvsp[(3) - (5)].ccl), (yyvsp[(4) - (5)].clist)); ;}
3729
{ (yyval.cblk) = new CaseBlockNode((yyvsp[(2) - (5)].clist), (yyvsp[(3) - (5)].ccl), (yyvsp[(4) - (5)].clist)); }
3734
/* Line 1806 of yacc.c */
3334
3735
#line 777 "grammar.y"
3335
{ (yyval.clist) = 0; ;}
3736
{ (yyval.clist) = 0; }
3741
/* Line 1806 of yacc.c */
3339
3742
#line 782 "grammar.y"
3340
{ (yyval.clist) = new ClauseListNode((yyvsp[(1) - (1)].ccl)); ;}
3743
{ (yyval.clist) = new ClauseListNode((yyvsp[(1) - (1)].ccl)); }
3748
/* Line 1806 of yacc.c */
3344
3749
#line 783 "grammar.y"
3345
{ (yyval.clist) = new ClauseListNode((yyvsp[(1) - (2)].clist), (yyvsp[(2) - (2)].ccl)); ;}
3750
{ (yyval.clist) = new ClauseListNode((yyvsp[(1) - (2)].clist), (yyvsp[(2) - (2)].ccl)); }
3755
/* Line 1806 of yacc.c */
3349
3756
#line 787 "grammar.y"
3350
{ (yyval.ccl) = new CaseClauseNode((yyvsp[(2) - (3)].node)); ;}
3757
{ (yyval.ccl) = new CaseClauseNode((yyvsp[(2) - (3)].node)); }
3762
/* Line 1806 of yacc.c */
3354
3763
#line 788 "grammar.y"
3355
{ (yyval.ccl) = new CaseClauseNode((yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].srcs)); ;}
3764
{ (yyval.ccl) = new CaseClauseNode((yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].srcs)); }
3769
/* Line 1806 of yacc.c */
3359
3770
#line 792 "grammar.y"
3360
{ (yyval.ccl) = new CaseClauseNode(0); ;}
3771
{ (yyval.ccl) = new CaseClauseNode(0); }
3776
/* Line 1806 of yacc.c */
3364
3777
#line 793 "grammar.y"
3365
{ (yyval.ccl) = new CaseClauseNode(0, (yyvsp[(3) - (3)].srcs)); ;}
3778
{ (yyval.ccl) = new CaseClauseNode(0, (yyvsp[(3) - (3)].srcs)); }
3783
/* Line 1806 of yacc.c */
3369
3784
#line 797 "grammar.y"
3370
{ (yyval.stat) = makeLabelNode(*(yyvsp[(1) - (3)].ident), (yyvsp[(3) - (3)].stat)); ;}
3785
{ (yyval.stat) = makeLabelNode(*(yyvsp[(1) - (3)].ident), (yyvsp[(3) - (3)].stat)); }
3790
/* Line 1806 of yacc.c */
3374
3791
#line 801 "grammar.y"
3375
{ (yyval.stat) = new ThrowNode((yyvsp[(2) - (3)].node)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); ;}
3792
{ (yyval.stat) = new ThrowNode((yyvsp[(2) - (3)].node)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); }
3797
/* Line 1806 of yacc.c */
3379
3798
#line 802 "grammar.y"
3380
{ (yyval.stat) = new ThrowNode((yyvsp[(2) - (3)].node)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(2) - (3)])); AUTO_SEMICOLON; ;}
3799
{ (yyval.stat) = new ThrowNode((yyvsp[(2) - (3)].node)); DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(2) - (3)])); AUTO_SEMICOLON; }
3804
/* Line 1806 of yacc.c */
3384
3805
#line 806 "grammar.y"
3385
{ (yyval.stat) = new TryNode((yyvsp[(2) - (4)].stat), CommonIdentifiers::shared()->nullIdentifier, 0, (yyvsp[(4) - (4)].stat)); DBG((yyval.stat), (yylsp[(1) - (4)]), (yylsp[(2) - (4)])); ;}
3806
{ (yyval.stat) = new TryNode((yyvsp[(2) - (4)].stat), CommonIdentifiers::shared()->nullIdentifier, 0, (yyvsp[(4) - (4)].stat)); DBG((yyval.stat), (yylsp[(1) - (4)]), (yylsp[(2) - (4)])); }
3811
/* Line 1806 of yacc.c */
3389
3812
#line 807 "grammar.y"
3390
{ (yyval.stat) = new TryNode((yyvsp[(2) - (7)].stat), *(yyvsp[(5) - (7)].ident), (yyvsp[(7) - (7)].stat), 0); DBG((yyval.stat), (yylsp[(1) - (7)]), (yylsp[(2) - (7)])); ;}
3813
{ (yyval.stat) = new TryNode((yyvsp[(2) - (7)].stat), *(yyvsp[(5) - (7)].ident), (yyvsp[(7) - (7)].stat), 0); DBG((yyval.stat), (yylsp[(1) - (7)]), (yylsp[(2) - (7)])); }
3818
/* Line 1806 of yacc.c */
3394
3819
#line 809 "grammar.y"
3395
{ (yyval.stat) = new TryNode((yyvsp[(2) - (9)].stat), *(yyvsp[(5) - (9)].ident), (yyvsp[(7) - (9)].stat), (yyvsp[(9) - (9)].stat)); DBG((yyval.stat), (yylsp[(1) - (9)]), (yylsp[(2) - (9)])); ;}
3820
{ (yyval.stat) = new TryNode((yyvsp[(2) - (9)].stat), *(yyvsp[(5) - (9)].ident), (yyvsp[(7) - (9)].stat), (yyvsp[(9) - (9)].stat)); DBG((yyval.stat), (yylsp[(1) - (9)]), (yylsp[(2) - (9)])); }
3825
/* Line 1806 of yacc.c */
3399
3826
#line 813 "grammar.y"
3400
{ (yyval.stat) = new EmptyStatementNode(); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(2) - (2)])); ;}
3827
{ (yyval.stat) = new EmptyStatementNode(); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(2) - (2)])); }
3832
/* Line 1806 of yacc.c */
3404
3833
#line 814 "grammar.y"
3405
{ (yyval.stat) = new EmptyStatementNode(); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(1) - (2)])); AUTO_SEMICOLON; ;}
3834
{ (yyval.stat) = new EmptyStatementNode(); DBG((yyval.stat), (yylsp[(1) - (2)]), (yylsp[(1) - (2)])); AUTO_SEMICOLON; }
3839
/* Line 1806 of yacc.c */
3409
3840
#line 818 "grammar.y"
3410
{ (yyval.pkgn) = new PackageNameNode(*(yyvsp[(1) - (1)].ident)); ;}
3841
{ (yyval.pkgn) = new PackageNameNode(*(yyvsp[(1) - (1)].ident)); }
3846
/* Line 1806 of yacc.c */
3414
3847
#line 819 "grammar.y"
3415
{ (yyval.pkgn) = new PackageNameNode((yyvsp[(1) - (3)].pkgn), *(yyvsp[(3) - (3)].ident)); ;}
3848
{ (yyval.pkgn) = new PackageNameNode((yyvsp[(1) - (3)].pkgn), *(yyvsp[(3) - (3)].ident)); }
3853
/* Line 1806 of yacc.c */
3419
3854
#line 823 "grammar.y"
3420
3855
{ (yyval.stat) = makeImportNode((yyvsp[(2) - (5)].pkgn), true, 0);
3421
DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(5) - (5)])); ;}
3856
DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(5) - (5)])); }
3861
/* Line 1806 of yacc.c */
3425
3862
#line 825 "grammar.y"
3426
3863
{ (yyval.stat) = makeImportNode((yyvsp[(2) - (5)].pkgn), true, 0);
3427
DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(5) - (5)])); AUTO_SEMICOLON; ;}
3864
DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(5) - (5)])); AUTO_SEMICOLON; }
3869
/* Line 1806 of yacc.c */
3431
3870
#line 827 "grammar.y"
3432
3871
{ (yyval.stat) = makeImportNode((yyvsp[(2) - (3)].pkgn), false, 0);
3433
DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); ;}
3872
DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); }
3877
/* Line 1806 of yacc.c */
3437
3878
#line 829 "grammar.y"
3438
3879
{ (yyval.stat) = makeImportNode((yyvsp[(2) - (3)].pkgn), false, 0);
3439
DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); AUTO_SEMICOLON; ;}
3880
DBG((yyval.stat), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); AUTO_SEMICOLON; }
3885
/* Line 1806 of yacc.c */
3443
3886
#line 831 "grammar.y"
3444
3887
{ (yyval.stat) = makeImportNode((yyvsp[(4) - (5)].pkgn), false, *(yyvsp[(2) - (5)].ident));
3445
DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(5) - (5)])); ;}
3888
DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(5) - (5)])); }
3893
/* Line 1806 of yacc.c */
3449
3894
#line 833 "grammar.y"
3450
3895
{ (yyval.stat) = makeImportNode((yyvsp[(4) - (5)].pkgn), false, *(yyvsp[(2) - (5)].ident));
3451
DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(5) - (5)])); AUTO_SEMICOLON; ;}
3896
DBG((yyval.stat), (yylsp[(1) - (5)]), (yylsp[(5) - (5)])); AUTO_SEMICOLON; }
3901
/* Line 1806 of yacc.c */
3455
3902
#line 838 "grammar.y"
3456
3903
{inFuncDecl();}
3908
/* Line 1806 of yacc.c */
3460
3909
#line 838 "grammar.y"
3461
{ (yyval.func) = new FuncDeclNode(*(yyvsp[(2) - (6)].ident), (yyvsp[(6) - (6)].body)); ;}
3910
{ (yyval.func) = new FuncDeclNode(*(yyvsp[(2) - (6)].ident), (yyvsp[(6) - (6)].body)); }
3915
/* Line 1806 of yacc.c */
3465
3916
#line 839 "grammar.y"
3466
3917
{inFuncDecl();}
3922
/* Line 1806 of yacc.c */
3470
3923
#line 840 "grammar.y"
3471
{ (yyval.func) = new FuncDeclNode(*(yyvsp[(2) - (7)].ident), (yyvsp[(4) - (7)].param), (yyvsp[(7) - (7)].body)); ;}
3924
{ (yyval.func) = new FuncDeclNode(*(yyvsp[(2) - (7)].ident), (yyvsp[(4) - (7)].param), (yyvsp[(7) - (7)].body)); }
3929
/* Line 1806 of yacc.c */
3475
3930
#line 844 "grammar.y"
3476
3931
{inFuncExpr();}
3936
/* Line 1806 of yacc.c */
3480
3937
#line 844 "grammar.y"
3482
3939
(yyval.funcExpr) = new FuncExprNode(CommonIdentifiers::shared()->nullIdentifier, (yyvsp[(5) - (5)].body));
3945
/* Line 1806 of yacc.c */
3487
3946
#line 847 "grammar.y"
3488
3947
{inFuncExpr();}
3952
/* Line 1806 of yacc.c */
3492
3953
#line 847 "grammar.y"
3494
3955
(yyval.funcExpr) = new FuncExprNode(CommonIdentifiers::shared()->nullIdentifier, (yyvsp[(6) - (6)].body), (yyvsp[(3) - (6)].param));
3961
/* Line 1806 of yacc.c */
3499
3962
#line 850 "grammar.y"
3500
3963
{inFuncExpr();}
3968
/* Line 1806 of yacc.c */
3504
3969
#line 850 "grammar.y"
3505
{ (yyval.funcExpr) = new FuncExprNode(*(yyvsp[(2) - (6)].ident), (yyvsp[(6) - (6)].body)); ;}
3970
{ (yyval.funcExpr) = new FuncExprNode(*(yyvsp[(2) - (6)].ident), (yyvsp[(6) - (6)].body)); }
3975
/* Line 1806 of yacc.c */
3509
3976
#line 851 "grammar.y"
3510
3977
{inFuncExpr();}
3982
/* Line 1806 of yacc.c */
3514
3983
#line 851 "grammar.y"
3516
3985
(yyval.funcExpr) = new FuncExprNode(*(yyvsp[(2) - (7)].ident), (yyvsp[(7) - (7)].body), (yyvsp[(4) - (7)].param));
3991
/* Line 1806 of yacc.c */
3521
3992
#line 857 "grammar.y"
3522
{ (yyval.param) = new ParameterNode(*(yyvsp[(1) - (1)].ident)); ;}
3993
{ (yyval.param) = new ParameterNode(*(yyvsp[(1) - (1)].ident)); }
3998
/* Line 1806 of yacc.c */
3526
3999
#line 858 "grammar.y"
3527
{ (yyval.param) = new ParameterNode((yyvsp[(1) - (3)].param), *(yyvsp[(3) - (3)].ident)); ;}
4000
{ (yyval.param) = new ParameterNode((yyvsp[(1) - (3)].param), *(yyvsp[(3) - (3)].ident)); }
4005
/* Line 1806 of yacc.c */
3531
4006
#line 862 "grammar.y"
3532
{ (yyval.body) = new FunctionBodyNode(0); DBG((yyval.body), (yylsp[(1) - (2)]), (yylsp[(2) - (2)])); ;}
4007
{ (yyval.body) = new FunctionBodyNode(0); DBG((yyval.body), (yylsp[(1) - (2)]), (yylsp[(2) - (2)])); }
4012
/* Line 1806 of yacc.c */
3536
4013
#line 863 "grammar.y"
3537
{ (yyval.body) = new FunctionBodyNode((yyvsp[(2) - (3)].srcs)); DBG((yyval.body), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); ;}
4014
{ (yyval.body) = new FunctionBodyNode((yyvsp[(2) - (3)].srcs)); DBG((yyval.body), (yylsp[(1) - (3)]), (yylsp[(3) - (3)])); }
4019
/* Line 1806 of yacc.c */
3541
4020
#line 867 "grammar.y"
3542
{ parser().didFinishParsing(new ProgramNode(0)); ;}
4021
{ parser().didFinishParsing(new ProgramNode(0)); }
4026
/* Line 1806 of yacc.c */
3546
4027
#line 868 "grammar.y"
3547
{ parser().didFinishParsing(new ProgramNode((yyvsp[(1) - (1)].srcs))); ;}
4028
{ parser().didFinishParsing(new ProgramNode((yyvsp[(1) - (1)].srcs))); }
4033
/* Line 1806 of yacc.c */
3551
4034
#line 872 "grammar.y"
3552
{ (yyval.srcs) = new SourceElementsNode((yyvsp[(1) - (1)].stat)); ;}
4035
{ (yyval.srcs) = new SourceElementsNode((yyvsp[(1) - (1)].stat)); }
4040
/* Line 1806 of yacc.c */
3556
4041
#line 873 "grammar.y"
3557
{ (yyval.srcs) = new SourceElementsNode((yyvsp[(1) - (2)].srcs), (yyvsp[(2) - (2)].stat)); ;}
4042
{ (yyval.srcs) = new SourceElementsNode((yyvsp[(1) - (2)].srcs), (yyvsp[(2) - (2)].stat)); }
4047
/* Line 1806 of yacc.c */
3561
4048
#line 877 "grammar.y"
3562
{ (yyval.stat) = (yyvsp[(1) - (1)].func); ;}
4049
{ (yyval.stat) = (yyvsp[(1) - (1)].func); }
4054
/* Line 1806 of yacc.c */
3566
4055
#line 878 "grammar.y"
3567
{ (yyval.stat) = (yyvsp[(1) - (1)].stat); ;}
4056
{ (yyval.stat) = (yyvsp[(1) - (1)].stat); }
3571
/* Line 1267 of yacc.c. */
3572
#line 3573 "grammar.tab.c"
4061
/* Line 1806 of yacc.c */
4062
#line 4063 "grammar.tab.c"
3573
4063
default: break;
4065
/* User semantic actions sometimes alter yychar, and that requires
4066
that yytoken be updated with the new translation. We take the
4067
approach of translating immediately before every use of yytoken.
4068
One alternative is translating here after every semantic action,
4069
but that translation would be missed if the semantic action invokes
4070
YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
4071
if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an
4072
incorrect destructor might then be invoked immediately. In the
4073
case of YYERROR or YYBACKUP, subsequent parser actions might lead
4074
to an incorrect destructor call or verbose syntax error message
4075
before the lookahead is translated. */
3575
4076
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
3577
4078
YYPOPSTACK (yylen);