Changeset 1024 in webkit for trunk/JavaScriptCore/kjs/grammar.cpp
- Timestamp:
- Apr 15, 2002, 4:43:21 PM (23 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/kjs/grammar.cpp
r903 r1024 318 318 180, 181, 182, 183, 186, 188, 189, 192, 194, 198, 319 319 200, 203, 205, 208, 210, 214, 217, 218, 221, 223, 320 224, 225, 227, 230, 232, 235, 237, 238, 239, 24 2,321 24 4, 247, 249, 252, 254, 257, 259, 260, 263, 265,322 26 6, 267, 268, 269, 270, 271, 272, 273, 274, 275,323 27 8, 280, 281, 282, 285, 287, 288, 291, 293, 294,324 29 5, 298, 300, 302, 304, 306, 308, 310, 314, 316,325 31 7, 318, 319, 322, 324, 327, 329, 332, 334, 337,326 3 39, 343, 345, 349, 351, 355, 357, 361, 363, 364,327 36 5, 366, 367, 368, 369, 370, 371, 372, 373, 376,328 37 8, 381, 383, 384, 385, 386, 387, 388, 389, 390,329 39 1, 392, 393, 394, 395, 398, 400, 403, 405, 408,330 41 1, 420, 422, 426, 428, 431, 435, 439, 442, 449,331 45 1, 455, 457, 458, 461, 464, 467, 471, 477, 479,332 48 2, 484, 488, 490, 497, 499, 503, 505, 513, 515,333 5 19, 520, 526, 531, 536, 538, 542, 544, 547, 549,334 55 2, 554, 557, 559, 562, 568, 572, 574, 575, 578,335 58 2, 586, 589, 593, 595, 600, 602, 606, 609, 613,336 61 6, 620, 622, 625, 627320 224, 225, 227, 230, 232, 235, 237, 238, 239, 243, 321 245, 248, 250, 253, 255, 258, 260, 261, 264, 266, 322 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 323 279, 281, 282, 283, 286, 288, 289, 292, 294, 295, 324 296, 299, 301, 303, 305, 307, 309, 311, 315, 317, 325 318, 319, 320, 323, 325, 328, 330, 333, 335, 338, 326 340, 344, 346, 350, 352, 356, 358, 362, 364, 365, 327 366, 367, 368, 369, 370, 371, 372, 373, 374, 377, 328 379, 382, 384, 385, 386, 387, 388, 389, 390, 391, 329 392, 393, 394, 395, 396, 399, 401, 404, 406, 409, 330 412, 421, 423, 427, 429, 432, 436, 440, 443, 450, 331 452, 456, 458, 459, 462, 465, 468, 472, 478, 480, 332 483, 485, 489, 491, 498, 500, 504, 506, 514, 516, 333 520, 521, 527, 532, 537, 539, 543, 545, 548, 550, 334 553, 555, 558, 560, 563, 569, 573, 575, 576, 579, 335 583, 587, 590, 594, 596, 601, 603, 607, 610, 614, 336 617, 621, 623, 626, 628 337 337 }; 338 338 #endif … … 1467 1467 case 39: 1468 1468 #line 239 "grammar.y" 1469 { yyval.node = new AccessorNode2(yyvsp[-2].node, yyvsp[0].ustr); ; 1469 { yyval.node = new AccessorNode2(yyvsp[-2].node, yyvsp[0].ustr); 1470 delete yyvsp[0].ustr; ; 1470 1471 break;} 1471 1472 case 40: 1472 #line 24 3"grammar.y"1473 #line 244 "grammar.y" 1473 1474 { yyval.args = new ArgumentsNode(0L); ; 1474 1475 break;} 1475 1476 case 41: 1476 #line 24 4"grammar.y"1477 #line 245 "grammar.y" 1477 1478 { yyval.args = new ArgumentsNode(yyvsp[-1].alist); ; 1478 1479 break;} 1479 1480 case 42: 1480 #line 24 8"grammar.y"1481 #line 249 "grammar.y" 1481 1482 { yyval.alist = new ArgumentListNode(yyvsp[0].node); ; 1482 1483 break;} 1483 1484 case 43: 1484 #line 2 49"grammar.y"1485 #line 250 "grammar.y" 1485 1486 { yyval.alist = new ArgumentListNode(yyvsp[-2].alist, yyvsp[0].node); ; 1486 1487 break;} 1487 1488 case 47: 1488 #line 2 59"grammar.y"1489 #line 260 "grammar.y" 1489 1490 { yyval.node = new PostfixNode(yyvsp[-1].node, OpPlusPlus); ; 1490 1491 break;} 1491 1492 case 48: 1492 #line 26 0"grammar.y"1493 #line 261 "grammar.y" 1493 1494 { yyval.node = new PostfixNode(yyvsp[-1].node, OpMinusMinus); ; 1494 1495 break;} 1495 1496 case 50: 1496 #line 26 5"grammar.y"1497 #line 266 "grammar.y" 1497 1498 { yyval.node = new DeleteNode(yyvsp[0].node); ; 1498 1499 break;} 1499 1500 case 51: 1500 #line 26 6"grammar.y"1501 #line 267 "grammar.y" 1501 1502 { yyval.node = new VoidNode(yyvsp[0].node); ; 1502 1503 break;} 1503 1504 case 52: 1504 #line 26 7"grammar.y"1505 #line 268 "grammar.y" 1505 1506 { yyval.node = new TypeOfNode(yyvsp[0].node); ; 1506 1507 break;} 1507 1508 case 53: 1508 #line 268 "grammar.y"1509 { yyval.node = new PrefixNode(OpPlusPlus, yyvsp[0].node); ;1510 break;}1511 case 54:1512 1509 #line 269 "grammar.y" 1513 1510 { yyval.node = new PrefixNode(OpPlusPlus, yyvsp[0].node); ; 1514 1511 break;} 1512 case 54: 1513 #line 270 "grammar.y" 1514 { yyval.node = new PrefixNode(OpPlusPlus, yyvsp[0].node); ; 1515 break;} 1515 1516 case 55: 1516 #line 270 "grammar.y"1517 { yyval.node = new PrefixNode(OpMinusMinus, yyvsp[0].node); ;1518 break;}1519 case 56:1520 1517 #line 271 "grammar.y" 1521 1518 { yyval.node = new PrefixNode(OpMinusMinus, yyvsp[0].node); ; 1522 1519 break;} 1520 case 56: 1521 #line 272 "grammar.y" 1522 { yyval.node = new PrefixNode(OpMinusMinus, yyvsp[0].node); ; 1523 break;} 1523 1524 case 57: 1524 #line 27 2"grammar.y"1525 #line 273 "grammar.y" 1525 1526 { yyval.node = new UnaryPlusNode(yyvsp[0].node); ; 1526 1527 break;} 1527 1528 case 58: 1528 #line 27 3"grammar.y"1529 #line 274 "grammar.y" 1529 1530 { yyval.node = new NegateNode(yyvsp[0].node); ; 1530 1531 break;} 1531 1532 case 59: 1532 #line 27 4"grammar.y"1533 #line 275 "grammar.y" 1533 1534 { yyval.node = new BitwiseNotNode(yyvsp[0].node); ; 1534 1535 break;} 1535 1536 case 60: 1536 #line 27 5"grammar.y"1537 #line 276 "grammar.y" 1537 1538 { yyval.node = new LogicalNotNode(yyvsp[0].node); ; 1538 1539 break;} 1539 1540 case 62: 1540 #line 28 0"grammar.y"1541 #line 281 "grammar.y" 1541 1542 { yyval.node = new MultNode(yyvsp[-2].node, yyvsp[0].node, '*'); ; 1542 1543 break;} 1543 1544 case 63: 1544 #line 28 1"grammar.y"1545 #line 282 "grammar.y" 1545 1546 { yyval.node = new MultNode(yyvsp[-2].node, yyvsp[0].node, '/'); ; 1546 1547 break;} 1547 1548 case 64: 1548 #line 28 2"grammar.y"1549 #line 283 "grammar.y" 1549 1550 { yyval.node = new MultNode(yyvsp[-2].node,yyvsp[0].node,'%'); ; 1550 1551 break;} 1551 1552 case 66: 1552 #line 28 7"grammar.y"1553 #line 288 "grammar.y" 1553 1554 { yyval.node = new AddNode(yyvsp[-2].node, yyvsp[0].node, '+'); ; 1554 1555 break;} 1555 1556 case 67: 1556 #line 28 8"grammar.y"1557 #line 289 "grammar.y" 1557 1558 { yyval.node = new AddNode(yyvsp[-2].node, yyvsp[0].node, '-'); ; 1558 1559 break;} 1559 1560 case 69: 1560 #line 29 3"grammar.y"1561 #line 294 "grammar.y" 1561 1562 { yyval.node = new ShiftNode(yyvsp[-2].node, OpLShift, yyvsp[0].node); ; 1562 1563 break;} 1563 1564 case 70: 1564 #line 29 4"grammar.y"1565 #line 295 "grammar.y" 1565 1566 { yyval.node = new ShiftNode(yyvsp[-2].node, OpRShift, yyvsp[0].node); ; 1566 1567 break;} 1567 1568 case 71: 1568 #line 29 5"grammar.y"1569 #line 296 "grammar.y" 1569 1570 { yyval.node = new ShiftNode(yyvsp[-2].node, OpURShift, yyvsp[0].node); ; 1570 1571 break;} 1571 1572 case 73: 1572 #line 30 1"grammar.y"1573 #line 302 "grammar.y" 1573 1574 { yyval.node = new RelationalNode(yyvsp[-2].node, OpLess, yyvsp[0].node); ; 1574 1575 break;} 1575 1576 case 74: 1576 #line 30 3"grammar.y"1577 #line 304 "grammar.y" 1577 1578 { yyval.node = new RelationalNode(yyvsp[-2].node, OpGreater, yyvsp[0].node); ; 1578 1579 break;} 1579 1580 case 75: 1580 #line 30 5"grammar.y"1581 #line 306 "grammar.y" 1581 1582 { yyval.node = new RelationalNode(yyvsp[-2].node, OpLessEq, yyvsp[0].node); ; 1582 1583 break;} 1583 1584 case 76: 1584 #line 30 7"grammar.y"1585 #line 308 "grammar.y" 1585 1586 { yyval.node = new RelationalNode(yyvsp[-2].node, OpGreaterEq, yyvsp[0].node); ; 1586 1587 break;} 1587 1588 case 77: 1588 #line 3 09"grammar.y"1589 #line 310 "grammar.y" 1589 1590 { yyval.node = new RelationalNode(yyvsp[-2].node, OpInstanceOf, yyvsp[0].node); ; 1590 1591 break;} 1591 1592 case 78: 1592 #line 31 1"grammar.y"1593 #line 312 "grammar.y" 1593 1594 { yyval.node = new RelationalNode(yyvsp[-2].node, OpIn, yyvsp[0].node); ; 1594 1595 break;} 1595 1596 case 80: 1596 #line 31 6"grammar.y"1597 #line 317 "grammar.y" 1597 1598 { yyval.node = new EqualNode(yyvsp[-2].node, OpEqEq, yyvsp[0].node); ; 1598 1599 break;} 1599 1600 case 81: 1600 #line 31 7"grammar.y"1601 #line 318 "grammar.y" 1601 1602 { yyval.node = new EqualNode(yyvsp[-2].node, OpNotEq, yyvsp[0].node); ; 1602 1603 break;} 1603 1604 case 82: 1604 #line 31 8"grammar.y"1605 #line 319 "grammar.y" 1605 1606 { yyval.node = new EqualNode(yyvsp[-2].node, OpStrEq, yyvsp[0].node); ; 1606 1607 break;} 1607 1608 case 83: 1608 #line 3 19"grammar.y"1609 #line 320 "grammar.y" 1609 1610 { yyval.node = new EqualNode(yyvsp[-2].node, OpStrNEq, yyvsp[0].node);; 1610 1611 break;} 1611 1612 case 85: 1612 #line 32 4"grammar.y"1613 #line 325 "grammar.y" 1613 1614 { yyval.node = new BitOperNode(yyvsp[-2].node, OpBitAnd, yyvsp[0].node); ; 1614 1615 break;} 1615 1616 case 87: 1616 #line 3 29"grammar.y"1617 #line 330 "grammar.y" 1617 1618 { yyval.node = new BitOperNode(yyvsp[-2].node, OpBitXOr, yyvsp[0].node); ; 1618 1619 break;} 1619 1620 case 89: 1620 #line 33 4"grammar.y"1621 #line 335 "grammar.y" 1621 1622 { yyval.node = new BitOperNode(yyvsp[-2].node, OpBitOr, yyvsp[0].node); ; 1622 1623 break;} 1623 1624 case 91: 1624 #line 34 0"grammar.y"1625 #line 341 "grammar.y" 1625 1626 { yyval.node = new BinaryLogicalNode(yyvsp[-2].node, OpAnd, yyvsp[0].node); ; 1626 1627 break;} 1627 1628 case 93: 1628 #line 34 6"grammar.y"1629 #line 347 "grammar.y" 1629 1630 { yyval.node = new BinaryLogicalNode(yyvsp[-2].node, OpOr, yyvsp[0].node); ; 1630 1631 break;} 1631 1632 case 95: 1632 #line 35 2"grammar.y"1633 #line 353 "grammar.y" 1633 1634 { yyval.node = new ConditionalNode(yyvsp[-4].node, yyvsp[-2].node, yyvsp[0].node); ; 1634 1635 break;} 1635 1636 case 97: 1636 #line 35 8"grammar.y"1637 #line 359 "grammar.y" 1637 1638 { yyval.node = new AssignNode(yyvsp[-2].node, yyvsp[-1].op, yyvsp[0].node);; 1638 1639 break;} 1639 1640 case 98: 1640 #line 36 2"grammar.y"1641 #line 363 "grammar.y" 1641 1642 { yyval.op = OpEqual; ; 1642 1643 break;} 1643 1644 case 99: 1644 #line 36 3"grammar.y"1645 #line 364 "grammar.y" 1645 1646 { yyval.op = OpPlusEq; ; 1646 1647 break;} 1647 1648 case 100: 1648 #line 36 4"grammar.y"1649 #line 365 "grammar.y" 1649 1650 { yyval.op = OpMinusEq; ; 1650 1651 break;} 1651 1652 case 101: 1652 #line 36 5"grammar.y"1653 #line 366 "grammar.y" 1653 1654 { yyval.op = OpMultEq; ; 1654 1655 break;} 1655 1656 case 102: 1656 #line 36 6"grammar.y"1657 #line 367 "grammar.y" 1657 1658 { yyval.op = OpDivEq; ; 1658 1659 break;} 1659 1660 case 103: 1660 #line 36 7"grammar.y"1661 #line 368 "grammar.y" 1661 1662 { yyval.op = OpLShift; ; 1662 1663 break;} 1663 1664 case 104: 1664 #line 36 8"grammar.y"1665 #line 369 "grammar.y" 1665 1666 { yyval.op = OpRShift; ; 1666 1667 break;} 1667 1668 case 105: 1668 #line 3 69"grammar.y"1669 #line 370 "grammar.y" 1669 1670 { yyval.op = OpURShift; ; 1670 1671 break;} 1671 1672 case 106: 1672 #line 37 0"grammar.y"1673 #line 371 "grammar.y" 1673 1674 { yyval.op = OpAndEq; ; 1674 1675 break;} 1675 1676 case 107: 1676 #line 37 1"grammar.y"1677 #line 372 "grammar.y" 1677 1678 { yyval.op = OpXOrEq; ; 1678 1679 break;} 1679 1680 case 108: 1680 #line 37 2"grammar.y"1681 #line 373 "grammar.y" 1681 1682 { yyval.op = OpOrEq; ; 1682 1683 break;} 1683 1684 case 109: 1684 #line 37 3"grammar.y"1685 #line 374 "grammar.y" 1685 1686 { yyval.op = OpModEq; ; 1686 1687 break;} 1687 1688 case 111: 1688 #line 37 8"grammar.y"1689 #line 379 "grammar.y" 1689 1690 { yyval.node = new CommaNode(yyvsp[-2].node, yyvsp[0].node); ; 1690 1691 break;} 1691 1692 case 126: 1692 #line 399"grammar.y"1693 #line 400 "grammar.y" 1693 1694 { yyval.stat = new BlockNode(0L); DBG(yyval.stat, yylsp[0], yylsp[0]); ; 1694 1695 break;} 1695 1696 case 127: 1696 #line 40 0"grammar.y"1697 #line 401 "grammar.y" 1697 1698 { yyval.stat = new BlockNode(yyvsp[-1].srcs); DBG(yyval.stat, yylsp[0], yylsp[0]); ; 1698 1699 break;} 1699 1700 case 128: 1700 #line 40 4"grammar.y"1701 #line 405 "grammar.y" 1701 1702 { yyval.slist = new StatListNode(yyvsp[0].stat); ; 1702 1703 break;} 1703 1704 case 129: 1704 #line 40 5"grammar.y"1705 #line 406 "grammar.y" 1705 1706 { yyval.slist = new StatListNode(yyvsp[-1].slist, yyvsp[0].stat); ; 1706 1707 break;} 1707 1708 case 130: 1708 #line 4 09"grammar.y"1709 #line 410 "grammar.y" 1709 1710 { yyval.stat = new VarStatementNode(yyvsp[-1].vlist); 1710 1711 DBG(yyval.stat, yylsp[-2], yylsp[0]); ; 1711 1712 break;} 1712 1713 case 131: 1713 #line 41 1"grammar.y"1714 #line 412 "grammar.y" 1714 1715 { if (automatic()) { 1715 1716 yyval.stat = new VarStatementNode(yyvsp[-1].vlist); … … 1721 1722 break;} 1722 1723 case 132: 1723 #line 42 1"grammar.y"1724 #line 422 "grammar.y" 1724 1725 { yyval.vlist = new VarDeclListNode(yyvsp[0].decl); ; 1725 1726 break;} 1726 1727 case 133: 1727 #line 42 3"grammar.y"1728 #line 424 "grammar.y" 1728 1729 { yyval.vlist = new VarDeclListNode(yyvsp[-2].vlist, yyvsp[0].decl); ; 1729 1730 break;} 1730 1731 case 134: 1731 #line 42 7"grammar.y"1732 #line 428 "grammar.y" 1732 1733 { yyval.decl = new VarDeclNode(yyvsp[0].ustr, 0); delete yyvsp[0].ustr; ; 1733 1734 break;} 1734 1735 case 135: 1735 #line 42 8"grammar.y"1736 #line 429 "grammar.y" 1736 1737 { yyval.decl = new VarDeclNode(yyvsp[-1].ustr, yyvsp[0].init); delete yyvsp[-1].ustr; ; 1737 1738 break;} 1738 1739 case 136: 1739 #line 43 2"grammar.y"1740 #line 433 "grammar.y" 1740 1741 { yyval.init = new AssignExprNode(yyvsp[0].node); ; 1741 1742 break;} 1742 1743 case 137: 1743 #line 43 6"grammar.y"1744 #line 437 "grammar.y" 1744 1745 { yyval.stat = new EmptyStatementNode(); ; 1745 1746 break;} 1746 1747 case 138: 1747 #line 44 0"grammar.y"1748 #line 441 "grammar.y" 1748 1749 { yyval.stat = new ExprStatementNode(yyvsp[-1].node); 1749 1750 DBG(yyval.stat, yylsp[-1], yylsp[0]); ; 1750 1751 break;} 1751 1752 case 139: 1752 #line 44 2"grammar.y"1753 #line 443 "grammar.y" 1753 1754 { if (automatic()) { 1754 1755 yyval.stat = new ExprStatementNode(yyvsp[-1].node); … … 1758 1759 break;} 1759 1760 case 140: 1760 #line 45 0"grammar.y"1761 #line 451 "grammar.y" 1761 1762 { yyval.stat = new IfNode(yyvsp[-2].node,yyvsp[0].stat,0L);DBG(yyval.stat,yylsp[-4],yylsp[-1]); ; 1762 1763 break;} 1763 1764 case 141: 1764 #line 45 2"grammar.y"1765 #line 453 "grammar.y" 1765 1766 { yyval.stat = new IfNode(yyvsp[-4].node,yyvsp[-2].stat,yyvsp[0].stat);DBG(yyval.stat,yylsp[-6],yylsp[-3]); ; 1766 1767 break;} 1767 1768 case 142: 1768 #line 45 6"grammar.y"1769 #line 457 "grammar.y" 1769 1770 { yyval.stat=new DoWhileNode(yyvsp[-4].stat,yyvsp[-1].node);DBG(yyval.stat,yylsp[-5],yylsp[-3]);; 1770 1771 break;} 1771 1772 case 143: 1772 #line 45 7"grammar.y"1773 #line 458 "grammar.y" 1773 1774 { yyval.stat = new WhileNode(yyvsp[-2].node,yyvsp[0].stat);DBG(yyval.stat,yylsp[-4],yylsp[-1]); ; 1774 1775 break;} 1775 1776 case 144: 1776 #line 4 59"grammar.y"1777 #line 460 "grammar.y" 1777 1778 { yyval.stat = new ForNode(yyvsp[-6].node,yyvsp[-4].node,yyvsp[-2].node,yyvsp[0].stat); 1778 1779 DBG(yyval.stat,yylsp[-8],yylsp[-1]); ; 1779 1780 break;} 1780 1781 case 145: 1781 #line 46 2"grammar.y"1782 #line 463 "grammar.y" 1782 1783 { yyval.stat = new ForNode(yyvsp[-6].vlist,yyvsp[-4].node,yyvsp[-2].node,yyvsp[0].stat); 1783 1784 DBG(yyval.stat,yylsp[-9],yylsp[-1]); ; 1784 1785 break;} 1785 1786 case 146: 1786 #line 46 5"grammar.y"1787 #line 466 "grammar.y" 1787 1788 { yyval.stat = new ForInNode(yyvsp[-4].node, yyvsp[-2].node, yyvsp[0].stat); 1788 1789 DBG(yyval.stat,yylsp[-6],yylsp[-1]); ; 1789 1790 break;} 1790 1791 case 147: 1791 #line 46 8"grammar.y"1792 #line 469 "grammar.y" 1792 1793 { yyval.stat = new ForInNode(yyvsp[-4].ustr,0L,yyvsp[-2].node,yyvsp[0].stat); 1793 1794 DBG(yyval.stat,yylsp[-7],yylsp[-1]); … … 1795 1796 break;} 1796 1797 case 148: 1797 #line 47 2"grammar.y"1798 #line 473 "grammar.y" 1798 1799 { yyval.stat = new ForInNode(yyvsp[-5].ustr,yyvsp[-4].init,yyvsp[-2].node,yyvsp[0].stat); 1799 1800 DBG(yyval.stat,yylsp[-8],yylsp[-1]); … … 1801 1802 break;} 1802 1803 case 149: 1803 #line 47 8"grammar.y"1804 #line 479 "grammar.y" 1804 1805 { yyval.node = 0L; ; 1805 1806 break;} 1806 1807 case 151: 1807 #line 48 3"grammar.y"1808 #line 484 "grammar.y" 1808 1809 { yyval.stat = new ContinueNode(); DBG(yyval.stat,yylsp[-1],yylsp[0]); ; 1809 1810 break;} 1810 1811 case 152: 1811 #line 48 4"grammar.y"1812 #line 485 "grammar.y" 1812 1813 { if (automatic()) { 1813 1814 yyval.stat = new ContinueNode(); DBG(yyval.stat,yylsp[-1],yylsp[0]); … … 1816 1817 break;} 1817 1818 case 153: 1818 #line 48 8"grammar.y"1819 #line 489 "grammar.y" 1819 1820 { yyval.stat = new ContinueNode(yyvsp[-1].ustr); DBG(yyval.stat,yylsp[-2],yylsp[0]); 1820 1821 delete yyvsp[-1].ustr; ; 1821 1822 break;} 1822 1823 case 154: 1823 #line 49 0"grammar.y"1824 #line 491 "grammar.y" 1824 1825 { if (automatic()) { 1825 1826 yyval.stat = new ContinueNode(yyvsp[-1].ustr);DBG(yyval.stat,yylsp[-2],yylsp[-1]); … … 1829 1830 break;} 1830 1831 case 155: 1831 #line 49 8"grammar.y"1832 #line 499 "grammar.y" 1832 1833 { yyval.stat = new BreakNode();DBG(yyval.stat,yylsp[-1],yylsp[0]); ; 1833 1834 break;} 1834 1835 case 156: 1835 #line 499"grammar.y"1836 #line 500 "grammar.y" 1836 1837 { if (automatic()) { 1837 1838 yyval.stat = new BreakNode(); DBG(yyval.stat,yylsp[-1],yylsp[-1]); … … 1840 1841 break;} 1841 1842 case 157: 1842 #line 50 3"grammar.y"1843 #line 504 "grammar.y" 1843 1844 { yyval.stat = new BreakNode(yyvsp[-1].ustr); DBG(yyval.stat,yylsp[-2],yylsp[0]); 1844 1845 delete yyvsp[-1].ustr; ; 1845 1846 break;} 1846 1847 case 158: 1847 #line 50 5"grammar.y"1848 #line 506 "grammar.y" 1848 1849 { if (automatic()) { 1849 1850 yyval.stat = new BreakNode(yyvsp[-1].ustr); DBG(yyval.stat,yylsp[-2],yylsp[-1]); … … 1854 1855 break;} 1855 1856 case 159: 1856 #line 51 4"grammar.y"1857 #line 515 "grammar.y" 1857 1858 { yyval.stat = new ReturnNode(0L); DBG(yyval.stat,yylsp[-1],yylsp[0]); ; 1858 1859 break;} 1859 1860 case 160: 1860 #line 51 5"grammar.y"1861 #line 516 "grammar.y" 1861 1862 { if (automatic()) { 1862 1863 yyval.stat = new ReturnNode(0L); DBG(yyval.stat,yylsp[-1],yylsp[-1]); … … 1865 1866 break;} 1866 1867 case 161: 1867 #line 5 19"grammar.y"1868 #line 520 "grammar.y" 1868 1869 { yyval.stat = new ReturnNode(yyvsp[-1].node); ; 1869 1870 break;} 1870 1871 case 162: 1871 #line 52 0"grammar.y"1872 #line 521 "grammar.y" 1872 1873 { if (automatic()) 1873 1874 yyval.stat = new ReturnNode(yyvsp[-1].node); … … 1876 1877 break;} 1877 1878 case 163: 1878 #line 52 7"grammar.y"1879 #line 528 "grammar.y" 1879 1880 { yyval.stat = new WithNode(yyvsp[-2].node,yyvsp[0].stat); 1880 1881 DBG(yyval.stat, yylsp[-4], yylsp[-1]); ; 1881 1882 break;} 1882 1883 case 164: 1883 #line 53 2"grammar.y"1884 #line 533 "grammar.y" 1884 1885 { yyval.stat = new SwitchNode(yyvsp[-2].node, yyvsp[0].cblk); 1885 1886 DBG(yyval.stat, yylsp[-4], yylsp[-1]); ; 1886 1887 break;} 1887 1888 case 165: 1888 #line 53 7"grammar.y"1889 #line 538 "grammar.y" 1889 1890 { yyval.cblk = new CaseBlockNode(yyvsp[-1].clist, 0L, 0L); ; 1890 1891 break;} 1891 1892 case 166: 1892 #line 5 39"grammar.y"1893 #line 540 "grammar.y" 1893 1894 { yyval.cblk = new CaseBlockNode(yyvsp[-3].clist, yyvsp[-2].ccl, yyvsp[-1].clist); ; 1894 1895 break;} 1895 1896 case 167: 1896 #line 54 3"grammar.y"1897 #line 544 "grammar.y" 1897 1898 { yyval.clist = 0L; ; 1898 1899 break;} 1899 1900 case 169: 1900 #line 54 8"grammar.y"1901 #line 549 "grammar.y" 1901 1902 { yyval.clist = new ClauseListNode(yyvsp[0].ccl); ; 1902 1903 break;} 1903 1904 case 170: 1904 #line 5 49"grammar.y"1905 #line 550 "grammar.y" 1905 1906 { yyval.clist = yyvsp[-1].clist->append(yyvsp[0].ccl); ; 1906 1907 break;} 1907 1908 case 171: 1908 #line 55 3"grammar.y"1909 #line 554 "grammar.y" 1909 1910 { yyval.ccl = new CaseClauseNode(yyvsp[-1].node, 0L); ; 1910 1911 break;} 1911 1912 case 172: 1912 #line 55 4"grammar.y"1913 #line 555 "grammar.y" 1913 1914 { yyval.ccl = new CaseClauseNode(yyvsp[-2].node, yyvsp[0].slist); ; 1914 1915 break;} 1915 1916 case 173: 1916 #line 55 8"grammar.y"1917 #line 559 "grammar.y" 1917 1918 { yyval.ccl = new CaseClauseNode(0L, 0L);; ; 1918 1919 break;} 1919 1920 case 174: 1920 #line 5 59"grammar.y"1921 #line 560 "grammar.y" 1921 1922 { yyval.ccl = new CaseClauseNode(0L, yyvsp[0].slist); ; 1922 1923 break;} 1923 1924 case 175: 1924 #line 56 3"grammar.y"1925 #line 564 "grammar.y" 1925 1926 { yyvsp[0].stat->pushLabel(yyvsp[-2].ustr); 1926 1927 yyval.stat = new LabelNode(yyvsp[-2].ustr, yyvsp[0].stat); … … 1928 1929 break;} 1929 1930 case 176: 1930 #line 5 69"grammar.y"1931 #line 570 "grammar.y" 1931 1932 { yyval.stat = new ThrowNode(yyvsp[-1].node); ; 1932 1933 break;} 1933 1934 case 177: 1934 #line 57 3"grammar.y"1935 #line 574 "grammar.y" 1935 1936 { yyval.stat = new TryNode(yyvsp[-1].stat, yyvsp[0].node); ; 1936 1937 break;} 1937 1938 case 178: 1938 #line 57 4"grammar.y"1939 #line 575 "grammar.y" 1939 1940 { yyval.stat = new TryNode(yyvsp[-1].stat, 0L, yyvsp[0].node); ; 1940 1941 break;} 1941 1942 case 179: 1942 #line 57 5"grammar.y"1943 #line 576 "grammar.y" 1943 1944 { yyval.stat = new TryNode(yyvsp[-2].stat, yyvsp[-1].node, yyvsp[0].node); ; 1944 1945 break;} 1945 1946 case 180: 1946 #line 5 79"grammar.y"1947 #line 580 "grammar.y" 1947 1948 { yyval.node = new CatchNode(yyvsp[-2].ustr, yyvsp[0].stat); delete yyvsp[-2].ustr; ; 1948 1949 break;} 1949 1950 case 181: 1950 #line 58 3"grammar.y"1951 #line 584 "grammar.y" 1951 1952 { yyval.node = new FinallyNode(yyvsp[0].stat); ; 1952 1953 break;} 1953 1954 case 182: 1954 #line 58 7"grammar.y"1955 #line 588 "grammar.y" 1955 1956 { yyval.func = new FuncDeclNode(yyvsp[-3].ustr, 0L, yyvsp[0].body); 1956 1957 delete yyvsp[-3].ustr; ; 1957 1958 break;} 1958 1959 case 183: 1959 #line 59 0"grammar.y"1960 #line 591 "grammar.y" 1960 1961 { yyval.func = new FuncDeclNode(yyvsp[-4].ustr, yyvsp[-2].param, yyvsp[0].body); 1961 1962 delete yyvsp[-4].ustr; ; 1962 1963 break;} 1963 1964 case 184: 1964 #line 59 4"grammar.y"1965 #line 595 "grammar.y" 1965 1966 { yyval.node = new FuncExprNode(0L, yyvsp[0].body); ; 1966 1967 break;} 1967 1968 case 185: 1968 #line 59 6"grammar.y"1969 #line 597 "grammar.y" 1969 1970 { yyval.node = new FuncExprNode(yyvsp[-2].param, yyvsp[0].body); ; 1970 1971 break;} 1971 1972 case 186: 1972 #line 60 1"grammar.y"1973 #line 602 "grammar.y" 1973 1974 { yyval.param = new ParameterNode(yyvsp[0].ustr); delete yyvsp[0].ustr; ; 1974 1975 break;} 1975 1976 case 187: 1976 #line 60 2"grammar.y"1977 #line 603 "grammar.y" 1977 1978 { yyval.param = yyvsp[-2].param->append(yyvsp[0].ustr); 1978 1979 delete yyvsp[0].ustr; ; 1979 1980 break;} 1980 1981 case 188: 1981 #line 60 7"grammar.y"1982 #line 608 "grammar.y" 1982 1983 { yyval.body = new FunctionBodyNode(0L); 1983 1984 DBG(yyval.body, yylsp[-1], yylsp[0]);; 1984 1985 break;} 1985 1986 case 189: 1986 #line 6 09"grammar.y"1987 #line 610 "grammar.y" 1987 1988 { yyval.body = new FunctionBodyNode(yyvsp[-1].srcs); 1988 1989 DBG(yyval.body, yylsp[-2], yylsp[0]);; 1989 1990 break;} 1990 1991 case 190: 1991 #line 61 4"grammar.y"1992 #line 615 "grammar.y" 1992 1993 { yyval.prog = new ProgramNode(0L); 1993 1994 Parser::progNode = yyval.prog; ; 1994 1995 break;} 1995 1996 case 191: 1996 #line 61 6"grammar.y"1997 #line 617 "grammar.y" 1997 1998 { yyval.prog = new ProgramNode(yyvsp[0].srcs); 1998 1999 Parser::progNode = yyval.prog; ; 1999 2000 break;} 2000 2001 case 192: 2001 #line 62 1"grammar.y"2002 #line 622 "grammar.y" 2002 2003 { yyval.srcs = new SourceElementsNode(yyvsp[0].src); ; 2003 2004 break;} 2004 2005 case 193: 2005 #line 62 2"grammar.y"2006 #line 623 "grammar.y" 2006 2007 { yyval.srcs = new SourceElementsNode(yyvsp[-1].srcs, yyvsp[0].src); ; 2007 2008 break;} 2008 2009 case 194: 2009 #line 62 6"grammar.y"2010 #line 627 "grammar.y" 2010 2011 { yyval.src = new SourceElementNode(yyvsp[0].stat); ; 2011 2012 break;} 2012 2013 case 195: 2013 #line 62 7"grammar.y"2014 #line 628 "grammar.y" 2014 2015 { yyval.src = new SourceElementNode(yyvsp[0].func); ; 2015 2016 break;} … … 2237 2238 return 1; 2238 2239 } 2239 #line 63 0"grammar.y"2240 #line 631 "grammar.y" 2240 2241 2241 2242
Note:
See TracChangeset
for help on using the changeset viewer.