| ... | ... | @@ -509,7 +509,7 @@ static QualType get_expr_qual_type_before_implicit_cast(Context *c, const Expr * |
| 509 | 509 | } |
| 510 | 510 | |
| 511 | 511 | static AstNode *get_expr_type(Context *c, const Expr *expr) { |
| 512 | | return trans_qual_type(c, get_expr_qual_type(c, expr), expr->getLocStart()); |
| 512 | return trans_qual_type(c, get_expr_qual_type(c, expr), expr->getBeginLoc()); |
| 513 | 513 | } |
| 514 | 514 | |
| 515 | 515 | static bool qual_types_equal(QualType t1, QualType t2) { |
| ... | ... | @@ -1203,7 +1203,7 @@ static AstNode *trans_return_stmt(Context *c, TransScope *scope, const ReturnStm |
| 1203 | 1203 | static AstNode *trans_integer_literal(Context *c, const IntegerLiteral *stmt) { |
| 1204 | 1204 | llvm::APSInt result; |
| 1205 | 1205 | if (!stmt->EvaluateAsInt(result, *c->ctx)) { |
| 1206 | | emit_warning(c, stmt->getLocStart(), "invalid integer literal"); |
| 1206 | emit_warning(c, stmt->getBeginLoc(), "invalid integer literal"); |
| 1207 | 1207 | return nullptr; |
| 1208 | 1208 | } |
| 1209 | 1209 | return trans_create_node_apint(c, result); |
| ... | ... | @@ -1318,7 +1318,7 @@ static AstNode *trans_create_assign(Context *c, ResultUsed result_used, TransSco |
| 1318 | 1318 | static AstNode *trans_create_shift_op(Context *c, TransScope *scope, QualType result_type, |
| 1319 | 1319 | Expr *lhs_expr, BinOpType bin_op, Expr *rhs_expr) |
| 1320 | 1320 | { |
| 1321 | | const SourceLocation &rhs_location = rhs_expr->getLocStart(); |
| 1321 | const SourceLocation &rhs_location = rhs_expr->getBeginLoc(); |
| 1322 | 1322 | AstNode *rhs_type = qual_type_to_log2_int_ref(c, result_type, rhs_location); |
| 1323 | 1323 | // lhs >> u5(rh) |
| 1324 | 1324 | |
| ... | ... | @@ -1335,13 +1335,13 @@ static AstNode *trans_create_shift_op(Context *c, TransScope *scope, QualType re |
| 1335 | 1335 | static AstNode *trans_binary_operator(Context *c, ResultUsed result_used, TransScope *scope, const BinaryOperator *stmt) { |
| 1336 | 1336 | switch (stmt->getOpcode()) { |
| 1337 | 1337 | case BO_PtrMemD: |
| 1338 | | emit_warning(c, stmt->getLocStart(), "TODO handle more C binary operators: BO_PtrMemD"); |
| 1338 | emit_warning(c, stmt->getBeginLoc(), "TODO handle more C binary operators: BO_PtrMemD"); |
| 1339 | 1339 | return nullptr; |
| 1340 | 1340 | case BO_PtrMemI: |
| 1341 | | emit_warning(c, stmt->getLocStart(), "TODO handle more C binary operators: BO_PtrMemI"); |
| 1341 | emit_warning(c, stmt->getBeginLoc(), "TODO handle more C binary operators: BO_PtrMemI"); |
| 1342 | 1342 | return nullptr; |
| 1343 | 1343 | case BO_Cmp: |
| 1344 | | emit_warning(c, stmt->getLocStart(), "TODO handle more C binary operators: BO_Cmp"); |
| 1344 | emit_warning(c, stmt->getBeginLoc(), "TODO handle more C binary operators: BO_Cmp"); |
| 1345 | 1345 | return nullptr; |
| 1346 | 1346 | case BO_Mul: |
| 1347 | 1347 | return trans_create_bin_op(c, scope, stmt->getLHS(), |
| ... | ... | @@ -1449,7 +1449,7 @@ static AstNode *trans_binary_operator(Context *c, ResultUsed result_used, TransS |
| 1449 | 1449 | static AstNode *trans_create_compound_assign_shift(Context *c, ResultUsed result_used, TransScope *scope, |
| 1450 | 1450 | const CompoundAssignOperator *stmt, BinOpType assign_op, BinOpType bin_op) |
| 1451 | 1451 | { |
| 1452 | | const SourceLocation &rhs_location = stmt->getRHS()->getLocStart(); |
| 1452 | const SourceLocation &rhs_location = stmt->getRHS()->getBeginLoc(); |
| 1453 | 1453 | AstNode *rhs_type = qual_type_to_log2_int_ref(c, stmt->getComputationLHSType(), rhs_location); |
| 1454 | 1454 | |
| 1455 | 1455 | bool use_intermediate_casts = stmt->getComputationLHSType().getTypePtr() != stmt->getComputationResultType().getTypePtr(); |
| ... | ... | @@ -1598,13 +1598,13 @@ static AstNode *trans_compound_assign_operator(Context *c, ResultUsed result_use |
| 1598 | 1598 | else |
| 1599 | 1599 | return trans_create_compound_assign(c, result_used, scope, stmt, BinOpTypeAssignTimes, BinOpTypeMult); |
| 1600 | 1600 | case BO_DivAssign: |
| 1601 | | emit_warning(c, stmt->getLocStart(), "TODO handle more C compound assign operators: BO_DivAssign"); |
| 1601 | emit_warning(c, stmt->getBeginLoc(), "TODO handle more C compound assign operators: BO_DivAssign"); |
| 1602 | 1602 | return nullptr; |
| 1603 | 1603 | case BO_RemAssign: |
| 1604 | | emit_warning(c, stmt->getLocStart(), "TODO handle more C compound assign operators: BO_RemAssign"); |
| 1604 | emit_warning(c, stmt->getBeginLoc(), "TODO handle more C compound assign operators: BO_RemAssign"); |
| 1605 | 1605 | return nullptr; |
| 1606 | 1606 | case BO_Cmp: |
| 1607 | | emit_warning(c, stmt->getLocStart(), "TODO handle more C compound assign operators: BO_Cmp"); |
| 1607 | emit_warning(c, stmt->getBeginLoc(), "TODO handle more C compound assign operators: BO_Cmp"); |
| 1608 | 1608 | return nullptr; |
| 1609 | 1609 | case BO_AddAssign: |
| 1610 | 1610 | if (qual_type_has_wrapping_overflow(c, stmt->getType())) |
| ... | ... | @@ -1694,160 +1694,163 @@ static AstNode *trans_implicit_cast_expr(Context *c, TransScope *scope, const Im |
| 1694 | 1694 | case CK_NullToPointer: |
| 1695 | 1695 | return trans_create_node(c, NodeTypeNullLiteral); |
| 1696 | 1696 | case CK_Dependent: |
| 1697 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_Dependent"); |
| 1697 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_Dependent"); |
| 1698 | 1698 | return nullptr; |
| 1699 | 1699 | case CK_LValueBitCast: |
| 1700 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_LValueBitCast"); |
| 1700 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_LValueBitCast"); |
| 1701 | 1701 | return nullptr; |
| 1702 | 1702 | case CK_NoOp: |
| 1703 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_NoOp"); |
| 1703 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_NoOp"); |
| 1704 | 1704 | return nullptr; |
| 1705 | 1705 | case CK_BaseToDerived: |
| 1706 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_BaseToDerived"); |
| 1706 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_BaseToDerived"); |
| 1707 | 1707 | return nullptr; |
| 1708 | 1708 | case CK_DerivedToBase: |
| 1709 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_DerivedToBase"); |
| 1709 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_DerivedToBase"); |
| 1710 | 1710 | return nullptr; |
| 1711 | 1711 | case CK_UncheckedDerivedToBase: |
| 1712 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_UncheckedDerivedToBase"); |
| 1712 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_UncheckedDerivedToBase"); |
| 1713 | 1713 | return nullptr; |
| 1714 | 1714 | case CK_Dynamic: |
| 1715 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_Dynamic"); |
| 1715 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_Dynamic"); |
| 1716 | 1716 | return nullptr; |
| 1717 | 1717 | case CK_ToUnion: |
| 1718 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_ToUnion"); |
| 1718 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_ToUnion"); |
| 1719 | 1719 | return nullptr; |
| 1720 | 1720 | case CK_NullToMemberPointer: |
| 1721 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_NullToMemberPointer"); |
| 1721 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_NullToMemberPointer"); |
| 1722 | 1722 | return nullptr; |
| 1723 | 1723 | case CK_BaseToDerivedMemberPointer: |
| 1724 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_BaseToDerivedMemberPointer"); |
| 1724 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_BaseToDerivedMemberPointer"); |
| 1725 | 1725 | return nullptr; |
| 1726 | 1726 | case CK_DerivedToBaseMemberPointer: |
| 1727 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_DerivedToBaseMemberPointer"); |
| 1727 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_DerivedToBaseMemberPointer"); |
| 1728 | 1728 | return nullptr; |
| 1729 | 1729 | case CK_MemberPointerToBoolean: |
| 1730 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_MemberPointerToBoolean"); |
| 1730 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_MemberPointerToBoolean"); |
| 1731 | 1731 | return nullptr; |
| 1732 | 1732 | case CK_ReinterpretMemberPointer: |
| 1733 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_ReinterpretMemberPointer"); |
| 1733 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_ReinterpretMemberPointer"); |
| 1734 | 1734 | return nullptr; |
| 1735 | 1735 | case CK_UserDefinedConversion: |
| 1736 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_UserDefinedConversion"); |
| 1736 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_UserDefinedConversion"); |
| 1737 | 1737 | return nullptr; |
| 1738 | 1738 | case CK_ConstructorConversion: |
| 1739 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_ConstructorConversion"); |
| 1739 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_ConstructorConversion"); |
| 1740 | 1740 | return nullptr; |
| 1741 | 1741 | case CK_IntegralToPointer: |
| 1742 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_IntegralToPointer"); |
| 1742 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_IntegralToPointer"); |
| 1743 | 1743 | return nullptr; |
| 1744 | 1744 | case CK_PointerToIntegral: |
| 1745 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_PointerToIntegral"); |
| 1745 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_PointerToIntegral"); |
| 1746 | 1746 | return nullptr; |
| 1747 | 1747 | case CK_PointerToBoolean: |
| 1748 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_PointerToBoolean"); |
| 1748 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_PointerToBoolean"); |
| 1749 | 1749 | return nullptr; |
| 1750 | 1750 | case CK_ToVoid: |
| 1751 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_ToVoid"); |
| 1751 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_ToVoid"); |
| 1752 | 1752 | return nullptr; |
| 1753 | 1753 | case CK_VectorSplat: |
| 1754 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_VectorSplat"); |
| 1754 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_VectorSplat"); |
| 1755 | 1755 | return nullptr; |
| 1756 | 1756 | case CK_IntegralToBoolean: |
| 1757 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_IntegralToBoolean"); |
| 1757 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_IntegralToBoolean"); |
| 1758 | 1758 | return nullptr; |
| 1759 | 1759 | case CK_IntegralToFloating: |
| 1760 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_IntegralToFloating"); |
| 1760 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_IntegralToFloating"); |
| 1761 | 1761 | return nullptr; |
| 1762 | 1762 | case CK_FloatingToIntegral: |
| 1763 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_FloatingToIntegral"); |
| 1763 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_FloatingToIntegral"); |
| 1764 | 1764 | return nullptr; |
| 1765 | 1765 | case CK_FloatingToBoolean: |
| 1766 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_FloatingToBoolean"); |
| 1766 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_FloatingToBoolean"); |
| 1767 | 1767 | return nullptr; |
| 1768 | 1768 | case CK_BooleanToSignedIntegral: |
| 1769 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_BooleanToSignedIntegral"); |
| 1769 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_BooleanToSignedIntegral"); |
| 1770 | 1770 | return nullptr; |
| 1771 | 1771 | case CK_FloatingCast: |
| 1772 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_FloatingCast"); |
| 1772 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_FloatingCast"); |
| 1773 | 1773 | return nullptr; |
| 1774 | 1774 | case CK_CPointerToObjCPointerCast: |
| 1775 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_CPointerToObjCPointerCast"); |
| 1775 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_CPointerToObjCPointerCast"); |
| 1776 | 1776 | return nullptr; |
| 1777 | 1777 | case CK_BlockPointerToObjCPointerCast: |
| 1778 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_BlockPointerToObjCPointerCast"); |
| 1778 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_BlockPointerToObjCPointerCast"); |
| 1779 | 1779 | return nullptr; |
| 1780 | 1780 | case CK_AnyPointerToBlockPointerCast: |
| 1781 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_AnyPointerToBlockPointerCast"); |
| 1781 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_AnyPointerToBlockPointerCast"); |
| 1782 | 1782 | return nullptr; |
| 1783 | 1783 | case CK_ObjCObjectLValueCast: |
| 1784 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_ObjCObjectLValueCast"); |
| 1784 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_ObjCObjectLValueCast"); |
| 1785 | 1785 | return nullptr; |
| 1786 | 1786 | case CK_FloatingRealToComplex: |
| 1787 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_FloatingRealToComplex"); |
| 1787 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_FloatingRealToComplex"); |
| 1788 | 1788 | return nullptr; |
| 1789 | 1789 | case CK_FloatingComplexToReal: |
| 1790 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_FloatingComplexToReal"); |
| 1790 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_FloatingComplexToReal"); |
| 1791 | 1791 | return nullptr; |
| 1792 | 1792 | case CK_FloatingComplexToBoolean: |
| 1793 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_FloatingComplexToBoolean"); |
| 1793 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_FloatingComplexToBoolean"); |
| 1794 | 1794 | return nullptr; |
| 1795 | 1795 | case CK_FloatingComplexCast: |
| 1796 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_FloatingComplexCast"); |
| 1796 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_FloatingComplexCast"); |
| 1797 | 1797 | return nullptr; |
| 1798 | 1798 | case CK_FloatingComplexToIntegralComplex: |
| 1799 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_FloatingComplexToIntegralComplex"); |
| 1799 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_FloatingComplexToIntegralComplex"); |
| 1800 | 1800 | return nullptr; |
| 1801 | 1801 | case CK_IntegralRealToComplex: |
| 1802 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_IntegralRealToComplex"); |
| 1802 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_IntegralRealToComplex"); |
| 1803 | 1803 | return nullptr; |
| 1804 | 1804 | case CK_IntegralComplexToReal: |
| 1805 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_IntegralComplexToReal"); |
| 1805 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_IntegralComplexToReal"); |
| 1806 | 1806 | return nullptr; |
| 1807 | 1807 | case CK_IntegralComplexToBoolean: |
| 1808 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_IntegralComplexToBoolean"); |
| 1808 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_IntegralComplexToBoolean"); |
| 1809 | 1809 | return nullptr; |
| 1810 | 1810 | case CK_IntegralComplexCast: |
| 1811 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_IntegralComplexCast"); |
| 1811 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_IntegralComplexCast"); |
| 1812 | 1812 | return nullptr; |
| 1813 | 1813 | case CK_IntegralComplexToFloatingComplex: |
| 1814 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_IntegralComplexToFloatingComplex"); |
| 1814 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_IntegralComplexToFloatingComplex"); |
| 1815 | 1815 | return nullptr; |
| 1816 | 1816 | case CK_ARCProduceObject: |
| 1817 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_ARCProduceObject"); |
| 1817 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_ARCProduceObject"); |
| 1818 | 1818 | return nullptr; |
| 1819 | 1819 | case CK_ARCConsumeObject: |
| 1820 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_ARCConsumeObject"); |
| 1820 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_ARCConsumeObject"); |
| 1821 | 1821 | return nullptr; |
| 1822 | 1822 | case CK_ARCReclaimReturnedObject: |
| 1823 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_ARCReclaimReturnedObject"); |
| 1823 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_ARCReclaimReturnedObject"); |
| 1824 | 1824 | return nullptr; |
| 1825 | 1825 | case CK_ARCExtendBlockObject: |
| 1826 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_ARCExtendBlockObject"); |
| 1826 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_ARCExtendBlockObject"); |
| 1827 | 1827 | return nullptr; |
| 1828 | 1828 | case CK_AtomicToNonAtomic: |
| 1829 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_AtomicToNonAtomic"); |
| 1829 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_AtomicToNonAtomic"); |
| 1830 | 1830 | return nullptr; |
| 1831 | 1831 | case CK_NonAtomicToAtomic: |
| 1832 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_NonAtomicToAtomic"); |
| 1832 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_NonAtomicToAtomic"); |
| 1833 | 1833 | return nullptr; |
| 1834 | 1834 | case CK_CopyAndAutoreleaseBlockObject: |
| 1835 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_CopyAndAutoreleaseBlockObject"); |
| 1835 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_CopyAndAutoreleaseBlockObject"); |
| 1836 | 1836 | return nullptr; |
| 1837 | 1837 | case CK_BuiltinFnToFnPtr: |
| 1838 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_BuiltinFnToFnPtr"); |
| 1839 | | return nullptr; |
| 1840 | | case CK_ZeroToOCLEvent: |
| 1841 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_ZeroToOCLEvent"); |
| 1842 | | return nullptr; |
| 1843 | | case CK_ZeroToOCLQueue: |
| 1844 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_ZeroToOCLQueue"); |
| 1838 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_BuiltinFnToFnPtr"); |
| 1845 | 1839 | return nullptr; |
| 1846 | 1840 | case CK_AddressSpaceConversion: |
| 1847 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_AddressSpaceConversion"); |
| 1841 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_AddressSpaceConversion"); |
| 1848 | 1842 | return nullptr; |
| 1849 | 1843 | case CK_IntToOCLSampler: |
| 1850 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation cast CK_IntToOCLSampler"); |
| 1844 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_IntToOCLSampler"); |
| 1845 | return nullptr; |
| 1846 | case CK_FixedPointCast: |
| 1847 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_FixedPointCast"); |
| 1848 | return nullptr; |
| 1849 | case CK_FixedPointToBoolean: |
| 1850 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_FixedPointToBoolean"); |
| 1851 | return nullptr; |
| 1852 | case CK_ZeroToOCLOpaqueType: |
| 1853 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation cast CK_ZeroToOCLOpaqueType"); |
| 1851 | 1854 | return nullptr; |
| 1852 | 1855 | } |
| 1853 | 1856 | zig_unreachable(); |
| ... | ... | @@ -2010,7 +2013,7 @@ static AstNode *trans_unary_operator(Context *c, ResultUsed result_used, TransSc |
| 2010 | 2013 | return trans_create_node_ptr_deref(c, unwrapped); |
| 2011 | 2014 | } |
| 2012 | 2015 | case UO_Plus: |
| 2013 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation UO_Plus"); |
| 2016 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation UO_Plus"); |
| 2014 | 2017 | return nullptr; |
| 2015 | 2018 | case UO_Minus: |
| 2016 | 2019 | { |
| ... | ... | @@ -2036,7 +2039,7 @@ static AstNode *trans_unary_operator(Context *c, ResultUsed result_used, TransSc |
| 2036 | 2039 | node->data.bin_op_expr.bin_op = BinOpTypeSubWrap; |
| 2037 | 2040 | return node; |
| 2038 | 2041 | } else { |
| 2039 | | emit_warning(c, stmt->getLocStart(), "C negation with non float non integer"); |
| 2042 | emit_warning(c, stmt->getBeginLoc(), "C negation with non float non integer"); |
| 2040 | 2043 | return nullptr; |
| 2041 | 2044 | } |
| 2042 | 2045 | } |
| ... | ... | @@ -2059,16 +2062,16 @@ static AstNode *trans_unary_operator(Context *c, ResultUsed result_used, TransSc |
| 2059 | 2062 | return trans_create_node_prefix_op(c, PrefixOpBoolNot, sub_node); |
| 2060 | 2063 | } |
| 2061 | 2064 | case UO_Real: |
| 2062 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation UO_Real"); |
| 2065 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation UO_Real"); |
| 2063 | 2066 | return nullptr; |
| 2064 | 2067 | case UO_Imag: |
| 2065 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation UO_Imag"); |
| 2068 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation UO_Imag"); |
| 2066 | 2069 | return nullptr; |
| 2067 | 2070 | case UO_Extension: |
| 2068 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation UO_Extension"); |
| 2071 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation UO_Extension"); |
| 2069 | 2072 | return nullptr; |
| 2070 | 2073 | case UO_Coawait: |
| 2071 | | emit_warning(c, stmt->getLocStart(), "TODO handle C translation UO_Coawait"); |
| 2074 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C translation UO_Coawait"); |
| 2072 | 2075 | return nullptr; |
| 2073 | 2076 | } |
| 2074 | 2077 | zig_unreachable(); |
| ... | ... | @@ -2098,7 +2101,7 @@ static int trans_local_declaration(Context *c, TransScope *scope, const DeclStmt |
| 2098 | 2101 | } else { |
| 2099 | 2102 | init_node = trans_create_node(c, NodeTypeUndefinedLiteral); |
| 2100 | 2103 | } |
| 2101 | | AstNode *type_node = trans_qual_type(c, qual_type, stmt->getLocStart()); |
| 2104 | AstNode *type_node = trans_qual_type(c, qual_type, stmt->getBeginLoc()); |
| 2102 | 2105 | if (type_node == nullptr) |
| 2103 | 2106 | return ErrorUnexpected; |
| 2104 | 2107 | |
| ... | ... | @@ -2114,220 +2117,223 @@ static int trans_local_declaration(Context *c, TransScope *scope, const DeclStmt |
| 2114 | 2117 | continue; |
| 2115 | 2118 | } |
| 2116 | 2119 | case Decl::AccessSpec: |
| 2117 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind AccessSpec"); |
| 2120 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind AccessSpec"); |
| 2118 | 2121 | return ErrorUnexpected; |
| 2119 | 2122 | case Decl::Block: |
| 2120 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Block"); |
| 2123 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Block"); |
| 2121 | 2124 | return ErrorUnexpected; |
| 2122 | 2125 | case Decl::Captured: |
| 2123 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Captured"); |
| 2126 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Captured"); |
| 2124 | 2127 | return ErrorUnexpected; |
| 2125 | 2128 | case Decl::ClassScopeFunctionSpecialization: |
| 2126 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ClassScopeFunctionSpecialization"); |
| 2129 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ClassScopeFunctionSpecialization"); |
| 2127 | 2130 | return ErrorUnexpected; |
| 2128 | 2131 | case Decl::Empty: |
| 2129 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Empty"); |
| 2132 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Empty"); |
| 2130 | 2133 | return ErrorUnexpected; |
| 2131 | 2134 | case Decl::Export: |
| 2132 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Export"); |
| 2135 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Export"); |
| 2133 | 2136 | return ErrorUnexpected; |
| 2134 | 2137 | case Decl::ExternCContext: |
| 2135 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ExternCContext"); |
| 2138 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ExternCContext"); |
| 2136 | 2139 | return ErrorUnexpected; |
| 2137 | 2140 | case Decl::FileScopeAsm: |
| 2138 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind FileScopeAsm"); |
| 2141 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind FileScopeAsm"); |
| 2139 | 2142 | return ErrorUnexpected; |
| 2140 | 2143 | case Decl::Friend: |
| 2141 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Friend"); |
| 2144 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Friend"); |
| 2142 | 2145 | return ErrorUnexpected; |
| 2143 | 2146 | case Decl::FriendTemplate: |
| 2144 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind FriendTemplate"); |
| 2147 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind FriendTemplate"); |
| 2145 | 2148 | return ErrorUnexpected; |
| 2146 | 2149 | case Decl::Import: |
| 2147 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Import"); |
| 2150 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Import"); |
| 2148 | 2151 | return ErrorUnexpected; |
| 2149 | 2152 | case Decl::LinkageSpec: |
| 2150 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind LinkageSpec"); |
| 2153 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind LinkageSpec"); |
| 2151 | 2154 | return ErrorUnexpected; |
| 2152 | 2155 | case Decl::Label: |
| 2153 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Label"); |
| 2156 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Label"); |
| 2154 | 2157 | return ErrorUnexpected; |
| 2155 | 2158 | case Decl::Namespace: |
| 2156 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Namespace"); |
| 2159 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Namespace"); |
| 2157 | 2160 | return ErrorUnexpected; |
| 2158 | 2161 | case Decl::NamespaceAlias: |
| 2159 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind NamespaceAlias"); |
| 2162 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind NamespaceAlias"); |
| 2160 | 2163 | return ErrorUnexpected; |
| 2161 | 2164 | case Decl::ObjCCompatibleAlias: |
| 2162 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ObjCCompatibleAlias"); |
| 2165 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ObjCCompatibleAlias"); |
| 2163 | 2166 | return ErrorUnexpected; |
| 2164 | 2167 | case Decl::ObjCCategory: |
| 2165 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ObjCCategory"); |
| 2168 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ObjCCategory"); |
| 2166 | 2169 | return ErrorUnexpected; |
| 2167 | 2170 | case Decl::ObjCCategoryImpl: |
| 2168 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ObjCCategoryImpl"); |
| 2171 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ObjCCategoryImpl"); |
| 2169 | 2172 | return ErrorUnexpected; |
| 2170 | 2173 | case Decl::ObjCImplementation: |
| 2171 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ObjCImplementation"); |
| 2174 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ObjCImplementation"); |
| 2172 | 2175 | return ErrorUnexpected; |
| 2173 | 2176 | case Decl::ObjCInterface: |
| 2174 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ObjCInterface"); |
| 2177 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ObjCInterface"); |
| 2175 | 2178 | return ErrorUnexpected; |
| 2176 | 2179 | case Decl::ObjCProtocol: |
| 2177 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ObjCProtocol"); |
| 2180 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ObjCProtocol"); |
| 2178 | 2181 | return ErrorUnexpected; |
| 2179 | 2182 | case Decl::ObjCMethod: |
| 2180 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ObjCMethod"); |
| 2183 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ObjCMethod"); |
| 2181 | 2184 | return ErrorUnexpected; |
| 2182 | 2185 | case Decl::ObjCProperty: |
| 2183 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ObjCProperty"); |
| 2186 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ObjCProperty"); |
| 2184 | 2187 | return ErrorUnexpected; |
| 2185 | 2188 | case Decl::BuiltinTemplate: |
| 2186 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind BuiltinTemplate"); |
| 2189 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind BuiltinTemplate"); |
| 2187 | 2190 | return ErrorUnexpected; |
| 2188 | 2191 | case Decl::ClassTemplate: |
| 2189 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ClassTemplate"); |
| 2192 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ClassTemplate"); |
| 2190 | 2193 | return ErrorUnexpected; |
| 2191 | 2194 | case Decl::FunctionTemplate: |
| 2192 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind FunctionTemplate"); |
| 2195 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind FunctionTemplate"); |
| 2193 | 2196 | return ErrorUnexpected; |
| 2194 | 2197 | case Decl::TypeAliasTemplate: |
| 2195 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind TypeAliasTemplate"); |
| 2198 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind TypeAliasTemplate"); |
| 2196 | 2199 | return ErrorUnexpected; |
| 2197 | 2200 | case Decl::VarTemplate: |
| 2198 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind VarTemplate"); |
| 2201 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind VarTemplate"); |
| 2199 | 2202 | return ErrorUnexpected; |
| 2200 | 2203 | case Decl::TemplateTemplateParm: |
| 2201 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind TemplateTemplateParm"); |
| 2204 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind TemplateTemplateParm"); |
| 2202 | 2205 | return ErrorUnexpected; |
| 2203 | 2206 | case Decl::Enum: |
| 2204 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Enum"); |
| 2207 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Enum"); |
| 2205 | 2208 | return ErrorUnexpected; |
| 2206 | 2209 | case Decl::Record: |
| 2207 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Record"); |
| 2210 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Record"); |
| 2208 | 2211 | return ErrorUnexpected; |
| 2209 | 2212 | case Decl::CXXRecord: |
| 2210 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind CXXRecord"); |
| 2213 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind CXXRecord"); |
| 2211 | 2214 | return ErrorUnexpected; |
| 2212 | 2215 | case Decl::ClassTemplateSpecialization: |
| 2213 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ClassTemplateSpecialization"); |
| 2216 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ClassTemplateSpecialization"); |
| 2214 | 2217 | return ErrorUnexpected; |
| 2215 | 2218 | case Decl::ClassTemplatePartialSpecialization: |
| 2216 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ClassTemplatePartialSpecialization"); |
| 2219 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ClassTemplatePartialSpecialization"); |
| 2217 | 2220 | return ErrorUnexpected; |
| 2218 | 2221 | case Decl::TemplateTypeParm: |
| 2219 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind TemplateTypeParm"); |
| 2222 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind TemplateTypeParm"); |
| 2220 | 2223 | return ErrorUnexpected; |
| 2221 | 2224 | case Decl::ObjCTypeParam: |
| 2222 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ObjCTypeParam"); |
| 2225 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ObjCTypeParam"); |
| 2223 | 2226 | return ErrorUnexpected; |
| 2224 | 2227 | case Decl::TypeAlias: |
| 2225 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind TypeAlias"); |
| 2228 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind TypeAlias"); |
| 2226 | 2229 | return ErrorUnexpected; |
| 2227 | 2230 | case Decl::Typedef: |
| 2228 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Typedef"); |
| 2231 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Typedef"); |
| 2229 | 2232 | return ErrorUnexpected; |
| 2230 | 2233 | case Decl::UnresolvedUsingTypename: |
| 2231 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind UnresolvedUsingTypename"); |
| 2234 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind UnresolvedUsingTypename"); |
| 2232 | 2235 | return ErrorUnexpected; |
| 2233 | 2236 | case Decl::Using: |
| 2234 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Using"); |
| 2237 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Using"); |
| 2235 | 2238 | return ErrorUnexpected; |
| 2236 | 2239 | case Decl::UsingDirective: |
| 2237 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind UsingDirective"); |
| 2240 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind UsingDirective"); |
| 2238 | 2241 | return ErrorUnexpected; |
| 2239 | 2242 | case Decl::UsingPack: |
| 2240 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind UsingPack"); |
| 2243 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind UsingPack"); |
| 2241 | 2244 | return ErrorUnexpected; |
| 2242 | 2245 | case Decl::UsingShadow: |
| 2243 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind UsingShadow"); |
| 2246 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind UsingShadow"); |
| 2244 | 2247 | return ErrorUnexpected; |
| 2245 | 2248 | case Decl::ConstructorUsingShadow: |
| 2246 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ConstructorUsingShadow"); |
| 2249 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ConstructorUsingShadow"); |
| 2247 | 2250 | return ErrorUnexpected; |
| 2248 | 2251 | case Decl::Binding: |
| 2249 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Binding"); |
| 2252 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Binding"); |
| 2250 | 2253 | return ErrorUnexpected; |
| 2251 | 2254 | case Decl::Field: |
| 2252 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Field"); |
| 2255 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Field"); |
| 2253 | 2256 | return ErrorUnexpected; |
| 2254 | 2257 | case Decl::ObjCAtDefsField: |
| 2255 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ObjCAtDefsField"); |
| 2258 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ObjCAtDefsField"); |
| 2256 | 2259 | return ErrorUnexpected; |
| 2257 | 2260 | case Decl::ObjCIvar: |
| 2258 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ObjCIvar"); |
| 2261 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ObjCIvar"); |
| 2259 | 2262 | return ErrorUnexpected; |
| 2260 | 2263 | case Decl::Function: |
| 2261 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Function"); |
| 2264 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Function"); |
| 2262 | 2265 | return ErrorUnexpected; |
| 2263 | 2266 | case Decl::CXXDeductionGuide: |
| 2264 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind CXXDeductionGuide"); |
| 2267 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind CXXDeductionGuide"); |
| 2265 | 2268 | return ErrorUnexpected; |
| 2266 | 2269 | case Decl::CXXMethod: |
| 2267 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind CXXMethod"); |
| 2270 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind CXXMethod"); |
| 2268 | 2271 | return ErrorUnexpected; |
| 2269 | 2272 | case Decl::CXXConstructor: |
| 2270 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind CXXConstructor"); |
| 2273 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind CXXConstructor"); |
| 2271 | 2274 | return ErrorUnexpected; |
| 2272 | 2275 | case Decl::CXXConversion: |
| 2273 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind CXXConversion"); |
| 2276 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind CXXConversion"); |
| 2274 | 2277 | return ErrorUnexpected; |
| 2275 | 2278 | case Decl::CXXDestructor: |
| 2276 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind CXXDestructor"); |
| 2279 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind CXXDestructor"); |
| 2277 | 2280 | return ErrorUnexpected; |
| 2278 | 2281 | case Decl::MSProperty: |
| 2279 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind MSProperty"); |
| 2282 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind MSProperty"); |
| 2280 | 2283 | return ErrorUnexpected; |
| 2281 | 2284 | case Decl::NonTypeTemplateParm: |
| 2282 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind NonTypeTemplateParm"); |
| 2285 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind NonTypeTemplateParm"); |
| 2283 | 2286 | return ErrorUnexpected; |
| 2284 | 2287 | case Decl::Decomposition: |
| 2285 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind Decomposition"); |
| 2288 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind Decomposition"); |
| 2286 | 2289 | return ErrorUnexpected; |
| 2287 | 2290 | case Decl::ImplicitParam: |
| 2288 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ImplicitParam"); |
| 2291 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ImplicitParam"); |
| 2289 | 2292 | return ErrorUnexpected; |
| 2290 | 2293 | case Decl::OMPCapturedExpr: |
| 2291 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind OMPCapturedExpr"); |
| 2294 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind OMPCapturedExpr"); |
| 2292 | 2295 | return ErrorUnexpected; |
| 2293 | 2296 | case Decl::ParmVar: |
| 2294 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ParmVar"); |
| 2297 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ParmVar"); |
| 2295 | 2298 | return ErrorUnexpected; |
| 2296 | 2299 | case Decl::VarTemplateSpecialization: |
| 2297 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind VarTemplateSpecialization"); |
| 2300 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind VarTemplateSpecialization"); |
| 2298 | 2301 | return ErrorUnexpected; |
| 2299 | 2302 | case Decl::VarTemplatePartialSpecialization: |
| 2300 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind VarTemplatePartialSpecialization"); |
| 2303 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind VarTemplatePartialSpecialization"); |
| 2301 | 2304 | return ErrorUnexpected; |
| 2302 | 2305 | case Decl::EnumConstant: |
| 2303 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind EnumConstant"); |
| 2306 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind EnumConstant"); |
| 2304 | 2307 | return ErrorUnexpected; |
| 2305 | 2308 | case Decl::IndirectField: |
| 2306 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind IndirectField"); |
| 2309 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind IndirectField"); |
| 2307 | 2310 | return ErrorUnexpected; |
| 2308 | 2311 | case Decl::OMPDeclareReduction: |
| 2309 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind OMPDeclareReduction"); |
| 2312 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind OMPDeclareReduction"); |
| 2310 | 2313 | return ErrorUnexpected; |
| 2311 | 2314 | case Decl::UnresolvedUsingValue: |
| 2312 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind UnresolvedUsingValue"); |
| 2315 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind UnresolvedUsingValue"); |
| 2313 | 2316 | return ErrorUnexpected; |
| 2314 | 2317 | case Decl::OMPThreadPrivate: |
| 2315 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind OMPThreadPrivate"); |
| 2318 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind OMPThreadPrivate"); |
| 2316 | 2319 | return ErrorUnexpected; |
| 2317 | 2320 | case Decl::ObjCPropertyImpl: |
| 2318 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind ObjCPropertyImpl"); |
| 2321 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind ObjCPropertyImpl"); |
| 2319 | 2322 | return ErrorUnexpected; |
| 2320 | 2323 | case Decl::PragmaComment: |
| 2321 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind PragmaComment"); |
| 2324 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind PragmaComment"); |
| 2322 | 2325 | return ErrorUnexpected; |
| 2323 | 2326 | case Decl::PragmaDetectMismatch: |
| 2324 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind PragmaDetectMismatch"); |
| 2327 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind PragmaDetectMismatch"); |
| 2325 | 2328 | return ErrorUnexpected; |
| 2326 | 2329 | case Decl::StaticAssert: |
| 2327 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind StaticAssert"); |
| 2330 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind StaticAssert"); |
| 2328 | 2331 | return ErrorUnexpected; |
| 2329 | 2332 | case Decl::TranslationUnit: |
| 2330 | | emit_warning(c, stmt->getLocStart(), "TODO handle decl kind TranslationUnit"); |
| 2333 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind TranslationUnit"); |
| 2334 | return ErrorUnexpected; |
| 2335 | case Decl::OMPRequires: |
| 2336 | emit_warning(c, stmt->getBeginLoc(), "TODO handle decl kind OMPRequires"); |
| 2331 | 2337 | return ErrorUnexpected; |
| 2332 | 2338 | } |
| 2333 | 2339 | zig_unreachable(); |
| ... | ... | @@ -2535,7 +2541,7 @@ static AstNode *trans_bool_expr(Context *c, ResultUsed result_used, TransScope * |
| 2535 | 2541 | const ElaboratedType *elaborated_ty = static_cast<const ElaboratedType*>(ty); |
| 2536 | 2542 | switch (elaborated_ty->getKeyword()) { |
| 2537 | 2543 | case ETK_Enum: { |
| 2538 | | AstNode *enum_type = trans_qual_type(c, elaborated_ty->getNamedType(), expr->getLocStart()); |
| 2544 | AstNode *enum_type = trans_qual_type(c, elaborated_ty->getNamedType(), expr->getBeginLoc()); |
| 2539 | 2545 | return to_enum_zero_cmp(c, res, enum_type); |
| 2540 | 2546 | } |
| 2541 | 2547 | case ETK_Struct: |
| ... | ... | @@ -2719,13 +2725,13 @@ static AstNode *trans_c_style_cast_expr(Context *c, ResultUsed result_used, Tran |
| 2719 | 2725 | if (sub_expr_node == nullptr) |
| 2720 | 2726 | return nullptr; |
| 2721 | 2727 | |
| 2722 | | return trans_c_cast(c, stmt->getLocStart(), stmt->getType(), stmt->getSubExpr()->getType(), sub_expr_node); |
| 2728 | return trans_c_cast(c, stmt->getBeginLoc(), stmt->getType(), stmt->getSubExpr()->getType(), sub_expr_node); |
| 2723 | 2729 | } |
| 2724 | 2730 | |
| 2725 | 2731 | static AstNode *trans_unary_expr_or_type_trait_expr(Context *c, TransScope *scope, |
| 2726 | 2732 | const UnaryExprOrTypeTraitExpr *stmt) |
| 2727 | 2733 | { |
| 2728 | | AstNode *type_node = trans_qual_type(c, stmt->getTypeOfArgument(), stmt->getLocStart()); |
| 2734 | AstNode *type_node = trans_qual_type(c, stmt->getTypeOfArgument(), stmt->getBeginLoc()); |
| 2729 | 2735 | if (type_node == nullptr) |
| 2730 | 2736 | return nullptr; |
| 2731 | 2737 | |
| ... | ... | @@ -2932,7 +2938,7 @@ static int trans_switch_case(Context *c, TransScope *parent_scope, const CaseStm |
| 2932 | 2938 | *out_node = nullptr; |
| 2933 | 2939 | |
| 2934 | 2940 | if (stmt->getRHS() != nullptr) { |
| 2935 | | emit_warning(c, stmt->getLocStart(), "TODO support GNU switch case a ... b extension"); |
| 2941 | emit_warning(c, stmt->getBeginLoc(), "TODO support GNU switch case a ... b extension"); |
| 2936 | 2942 | return ErrorUnexpected; |
| 2937 | 2943 | } |
| 2938 | 2944 | |
| ... | ... | @@ -3015,13 +3021,13 @@ static AstNode *trans_string_literal(Context *c, TransScope *scope, const String |
| 3015 | 3021 | case StringLiteral::UTF8: |
| 3016 | 3022 | return trans_create_node_str_lit_c(c, string_ref_to_buf(stmt->getString())); |
| 3017 | 3023 | case StringLiteral::UTF16: |
| 3018 | | emit_warning(c, stmt->getLocStart(), "TODO support UTF16 string literals"); |
| 3024 | emit_warning(c, stmt->getBeginLoc(), "TODO support UTF16 string literals"); |
| 3019 | 3025 | return nullptr; |
| 3020 | 3026 | case StringLiteral::UTF32: |
| 3021 | | emit_warning(c, stmt->getLocStart(), "TODO support UTF32 string literals"); |
| 3027 | emit_warning(c, stmt->getBeginLoc(), "TODO support UTF32 string literals"); |
| 3022 | 3028 | return nullptr; |
| 3023 | 3029 | case StringLiteral::Wide: |
| 3024 | | emit_warning(c, stmt->getLocStart(), "TODO support wide string literals"); |
| 3030 | emit_warning(c, stmt->getBeginLoc(), "TODO support wide string literals"); |
| 3025 | 3031 | return nullptr; |
| 3026 | 3032 | } |
| 3027 | 3033 | zig_unreachable(); |
| ... | ... | @@ -3151,511 +3157,514 @@ static int trans_stmt_extra(Context *c, TransScope *scope, const Stmt *stmt, |
| 3151 | 3157 | case Stmt::DefaultStmtClass: |
| 3152 | 3158 | return trans_switch_default(c, scope, (const DefaultStmt *)stmt, out_node, out_child_scope); |
| 3153 | 3159 | case Stmt::NoStmtClass: |
| 3154 | | emit_warning(c, stmt->getLocStart(), "TODO handle C NoStmtClass"); |
| 3160 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C NoStmtClass"); |
| 3155 | 3161 | return ErrorUnexpected; |
| 3156 | 3162 | case Stmt::GCCAsmStmtClass: |
| 3157 | | emit_warning(c, stmt->getLocStart(), "TODO handle C GCCAsmStmtClass"); |
| 3163 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C GCCAsmStmtClass"); |
| 3158 | 3164 | return ErrorUnexpected; |
| 3159 | 3165 | case Stmt::MSAsmStmtClass: |
| 3160 | | emit_warning(c, stmt->getLocStart(), "TODO handle C MSAsmStmtClass"); |
| 3166 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C MSAsmStmtClass"); |
| 3161 | 3167 | return ErrorUnexpected; |
| 3162 | 3168 | case Stmt::AttributedStmtClass: |
| 3163 | | emit_warning(c, stmt->getLocStart(), "TODO handle C AttributedStmtClass"); |
| 3169 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C AttributedStmtClass"); |
| 3164 | 3170 | return ErrorUnexpected; |
| 3165 | 3171 | case Stmt::CXXCatchStmtClass: |
| 3166 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXCatchStmtClass"); |
| 3172 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXCatchStmtClass"); |
| 3167 | 3173 | return ErrorUnexpected; |
| 3168 | 3174 | case Stmt::CXXForRangeStmtClass: |
| 3169 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXForRangeStmtClass"); |
| 3175 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXForRangeStmtClass"); |
| 3170 | 3176 | return ErrorUnexpected; |
| 3171 | 3177 | case Stmt::CXXTryStmtClass: |
| 3172 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXTryStmtClass"); |
| 3178 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXTryStmtClass"); |
| 3173 | 3179 | return ErrorUnexpected; |
| 3174 | 3180 | case Stmt::CapturedStmtClass: |
| 3175 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CapturedStmtClass"); |
| 3181 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CapturedStmtClass"); |
| 3176 | 3182 | return ErrorUnexpected; |
| 3177 | 3183 | case Stmt::CoreturnStmtClass: |
| 3178 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CoreturnStmtClass"); |
| 3184 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CoreturnStmtClass"); |
| 3179 | 3185 | return ErrorUnexpected; |
| 3180 | 3186 | case Stmt::CoroutineBodyStmtClass: |
| 3181 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CoroutineBodyStmtClass"); |
| 3187 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CoroutineBodyStmtClass"); |
| 3182 | 3188 | return ErrorUnexpected; |
| 3183 | 3189 | case Stmt::BinaryConditionalOperatorClass: |
| 3184 | | emit_warning(c, stmt->getLocStart(), "TODO handle C BinaryConditionalOperatorClass"); |
| 3190 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C BinaryConditionalOperatorClass"); |
| 3185 | 3191 | return ErrorUnexpected; |
| 3186 | 3192 | case Stmt::AddrLabelExprClass: |
| 3187 | | emit_warning(c, stmt->getLocStart(), "TODO handle C AddrLabelExprClass"); |
| 3193 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C AddrLabelExprClass"); |
| 3188 | 3194 | return ErrorUnexpected; |
| 3189 | 3195 | case Stmt::ArrayInitIndexExprClass: |
| 3190 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ArrayInitIndexExprClass"); |
| 3196 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ArrayInitIndexExprClass"); |
| 3191 | 3197 | return ErrorUnexpected; |
| 3192 | 3198 | case Stmt::ArrayInitLoopExprClass: |
| 3193 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ArrayInitLoopExprClass"); |
| 3199 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ArrayInitLoopExprClass"); |
| 3194 | 3200 | return ErrorUnexpected; |
| 3195 | 3201 | case Stmt::ArrayTypeTraitExprClass: |
| 3196 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ArrayTypeTraitExprClass"); |
| 3202 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ArrayTypeTraitExprClass"); |
| 3197 | 3203 | return ErrorUnexpected; |
| 3198 | 3204 | case Stmt::AsTypeExprClass: |
| 3199 | | emit_warning(c, stmt->getLocStart(), "TODO handle C AsTypeExprClass"); |
| 3205 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C AsTypeExprClass"); |
| 3200 | 3206 | return ErrorUnexpected; |
| 3201 | 3207 | case Stmt::AtomicExprClass: |
| 3202 | | emit_warning(c, stmt->getLocStart(), "TODO handle C AtomicExprClass"); |
| 3208 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C AtomicExprClass"); |
| 3203 | 3209 | return ErrorUnexpected; |
| 3204 | 3210 | case Stmt::BlockExprClass: |
| 3205 | | emit_warning(c, stmt->getLocStart(), "TODO handle C BlockExprClass"); |
| 3211 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C BlockExprClass"); |
| 3206 | 3212 | return ErrorUnexpected; |
| 3207 | 3213 | case Stmt::CXXBindTemporaryExprClass: |
| 3208 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXBindTemporaryExprClass"); |
| 3214 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXBindTemporaryExprClass"); |
| 3209 | 3215 | return ErrorUnexpected; |
| 3210 | 3216 | case Stmt::CXXBoolLiteralExprClass: |
| 3211 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXBoolLiteralExprClass"); |
| 3217 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXBoolLiteralExprClass"); |
| 3212 | 3218 | return ErrorUnexpected; |
| 3213 | 3219 | case Stmt::CXXConstructExprClass: |
| 3214 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXConstructExprClass"); |
| 3220 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXConstructExprClass"); |
| 3215 | 3221 | return ErrorUnexpected; |
| 3216 | 3222 | case Stmt::CXXTemporaryObjectExprClass: |
| 3217 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXTemporaryObjectExprClass"); |
| 3223 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXTemporaryObjectExprClass"); |
| 3218 | 3224 | return ErrorUnexpected; |
| 3219 | 3225 | case Stmt::CXXDefaultArgExprClass: |
| 3220 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXDefaultArgExprClass"); |
| 3226 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXDefaultArgExprClass"); |
| 3221 | 3227 | return ErrorUnexpected; |
| 3222 | 3228 | case Stmt::CXXDefaultInitExprClass: |
| 3223 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXDefaultInitExprClass"); |
| 3229 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXDefaultInitExprClass"); |
| 3224 | 3230 | return ErrorUnexpected; |
| 3225 | 3231 | case Stmt::CXXDeleteExprClass: |
| 3226 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXDeleteExprClass"); |
| 3232 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXDeleteExprClass"); |
| 3227 | 3233 | return ErrorUnexpected; |
| 3228 | 3234 | case Stmt::CXXDependentScopeMemberExprClass: |
| 3229 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXDependentScopeMemberExprClass"); |
| 3235 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXDependentScopeMemberExprClass"); |
| 3230 | 3236 | return ErrorUnexpected; |
| 3231 | 3237 | case Stmt::CXXFoldExprClass: |
| 3232 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXFoldExprClass"); |
| 3238 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXFoldExprClass"); |
| 3233 | 3239 | return ErrorUnexpected; |
| 3234 | 3240 | case Stmt::CXXInheritedCtorInitExprClass: |
| 3235 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXInheritedCtorInitExprClass"); |
| 3241 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXInheritedCtorInitExprClass"); |
| 3236 | 3242 | return ErrorUnexpected; |
| 3237 | 3243 | case Stmt::CXXNewExprClass: |
| 3238 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXNewExprClass"); |
| 3244 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXNewExprClass"); |
| 3239 | 3245 | return ErrorUnexpected; |
| 3240 | 3246 | case Stmt::CXXNoexceptExprClass: |
| 3241 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXNoexceptExprClass"); |
| 3247 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXNoexceptExprClass"); |
| 3242 | 3248 | return ErrorUnexpected; |
| 3243 | 3249 | case Stmt::CXXNullPtrLiteralExprClass: |
| 3244 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXNullPtrLiteralExprClass"); |
| 3250 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXNullPtrLiteralExprClass"); |
| 3245 | 3251 | return ErrorUnexpected; |
| 3246 | 3252 | case Stmt::CXXPseudoDestructorExprClass: |
| 3247 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXPseudoDestructorExprClass"); |
| 3253 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXPseudoDestructorExprClass"); |
| 3248 | 3254 | return ErrorUnexpected; |
| 3249 | 3255 | case Stmt::CXXScalarValueInitExprClass: |
| 3250 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXScalarValueInitExprClass"); |
| 3256 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXScalarValueInitExprClass"); |
| 3251 | 3257 | return ErrorUnexpected; |
| 3252 | 3258 | case Stmt::CXXStdInitializerListExprClass: |
| 3253 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXStdInitializerListExprClass"); |
| 3259 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXStdInitializerListExprClass"); |
| 3254 | 3260 | return ErrorUnexpected; |
| 3255 | 3261 | case Stmt::CXXThisExprClass: |
| 3256 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXThisExprClass"); |
| 3262 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXThisExprClass"); |
| 3257 | 3263 | return ErrorUnexpected; |
| 3258 | 3264 | case Stmt::CXXThrowExprClass: |
| 3259 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXThrowExprClass"); |
| 3265 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXThrowExprClass"); |
| 3260 | 3266 | return ErrorUnexpected; |
| 3261 | 3267 | case Stmt::CXXTypeidExprClass: |
| 3262 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXTypeidExprClass"); |
| 3268 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXTypeidExprClass"); |
| 3263 | 3269 | return ErrorUnexpected; |
| 3264 | 3270 | case Stmt::CXXUnresolvedConstructExprClass: |
| 3265 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXUnresolvedConstructExprClass"); |
| 3271 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXUnresolvedConstructExprClass"); |
| 3266 | 3272 | return ErrorUnexpected; |
| 3267 | 3273 | case Stmt::CXXUuidofExprClass: |
| 3268 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXUuidofExprClass"); |
| 3274 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXUuidofExprClass"); |
| 3269 | 3275 | return ErrorUnexpected; |
| 3270 | 3276 | case Stmt::CUDAKernelCallExprClass: |
| 3271 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CUDAKernelCallExprClass"); |
| 3277 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CUDAKernelCallExprClass"); |
| 3272 | 3278 | return ErrorUnexpected; |
| 3273 | 3279 | case Stmt::CXXMemberCallExprClass: |
| 3274 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXMemberCallExprClass"); |
| 3280 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXMemberCallExprClass"); |
| 3275 | 3281 | return ErrorUnexpected; |
| 3276 | 3282 | case Stmt::CXXOperatorCallExprClass: |
| 3277 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXOperatorCallExprClass"); |
| 3283 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXOperatorCallExprClass"); |
| 3278 | 3284 | return ErrorUnexpected; |
| 3279 | 3285 | case Stmt::UserDefinedLiteralClass: |
| 3280 | | emit_warning(c, stmt->getLocStart(), "TODO handle C UserDefinedLiteralClass"); |
| 3286 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C UserDefinedLiteralClass"); |
| 3281 | 3287 | return ErrorUnexpected; |
| 3282 | 3288 | case Stmt::CXXFunctionalCastExprClass: |
| 3283 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXFunctionalCastExprClass"); |
| 3289 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXFunctionalCastExprClass"); |
| 3284 | 3290 | return ErrorUnexpected; |
| 3285 | 3291 | case Stmt::CXXConstCastExprClass: |
| 3286 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXConstCastExprClass"); |
| 3292 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXConstCastExprClass"); |
| 3287 | 3293 | return ErrorUnexpected; |
| 3288 | 3294 | case Stmt::CXXDynamicCastExprClass: |
| 3289 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXDynamicCastExprClass"); |
| 3295 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXDynamicCastExprClass"); |
| 3290 | 3296 | return ErrorUnexpected; |
| 3291 | 3297 | case Stmt::CXXReinterpretCastExprClass: |
| 3292 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXReinterpretCastExprClass"); |
| 3298 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXReinterpretCastExprClass"); |
| 3293 | 3299 | return ErrorUnexpected; |
| 3294 | 3300 | case Stmt::CXXStaticCastExprClass: |
| 3295 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CXXStaticCastExprClass"); |
| 3301 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CXXStaticCastExprClass"); |
| 3296 | 3302 | return ErrorUnexpected; |
| 3297 | 3303 | case Stmt::ObjCBridgedCastExprClass: |
| 3298 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCBridgedCastExprClass"); |
| 3304 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCBridgedCastExprClass"); |
| 3299 | 3305 | return ErrorUnexpected; |
| 3300 | 3306 | case Stmt::CharacterLiteralClass: |
| 3301 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CharacterLiteralClass"); |
| 3307 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CharacterLiteralClass"); |
| 3302 | 3308 | return ErrorUnexpected; |
| 3303 | 3309 | case Stmt::ChooseExprClass: |
| 3304 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ChooseExprClass"); |
| 3310 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ChooseExprClass"); |
| 3305 | 3311 | return ErrorUnexpected; |
| 3306 | 3312 | case Stmt::CompoundLiteralExprClass: |
| 3307 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CompoundLiteralExprClass"); |
| 3313 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CompoundLiteralExprClass"); |
| 3308 | 3314 | return ErrorUnexpected; |
| 3309 | 3315 | case Stmt::ConvertVectorExprClass: |
| 3310 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ConvertVectorExprClass"); |
| 3316 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ConvertVectorExprClass"); |
| 3311 | 3317 | return ErrorUnexpected; |
| 3312 | 3318 | case Stmt::CoawaitExprClass: |
| 3313 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CoawaitExprClass"); |
| 3319 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CoawaitExprClass"); |
| 3314 | 3320 | return ErrorUnexpected; |
| 3315 | 3321 | case Stmt::CoyieldExprClass: |
| 3316 | | emit_warning(c, stmt->getLocStart(), "TODO handle C CoyieldExprClass"); |
| 3322 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C CoyieldExprClass"); |
| 3317 | 3323 | return ErrorUnexpected; |
| 3318 | 3324 | case Stmt::DependentCoawaitExprClass: |
| 3319 | | emit_warning(c, stmt->getLocStart(), "TODO handle C DependentCoawaitExprClass"); |
| 3325 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C DependentCoawaitExprClass"); |
| 3320 | 3326 | return ErrorUnexpected; |
| 3321 | 3327 | case Stmt::DependentScopeDeclRefExprClass: |
| 3322 | | emit_warning(c, stmt->getLocStart(), "TODO handle C DependentScopeDeclRefExprClass"); |
| 3328 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C DependentScopeDeclRefExprClass"); |
| 3323 | 3329 | return ErrorUnexpected; |
| 3324 | 3330 | case Stmt::DesignatedInitExprClass: |
| 3325 | | emit_warning(c, stmt->getLocStart(), "TODO handle C DesignatedInitExprClass"); |
| 3331 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C DesignatedInitExprClass"); |
| 3326 | 3332 | return ErrorUnexpected; |
| 3327 | 3333 | case Stmt::DesignatedInitUpdateExprClass: |
| 3328 | | emit_warning(c, stmt->getLocStart(), "TODO handle C DesignatedInitUpdateExprClass"); |
| 3334 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C DesignatedInitUpdateExprClass"); |
| 3329 | 3335 | return ErrorUnexpected; |
| 3330 | 3336 | case Stmt::ExprWithCleanupsClass: |
| 3331 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ExprWithCleanupsClass"); |
| 3337 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ExprWithCleanupsClass"); |
| 3332 | 3338 | return ErrorUnexpected; |
| 3333 | 3339 | case Stmt::ExpressionTraitExprClass: |
| 3334 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ExpressionTraitExprClass"); |
| 3340 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ExpressionTraitExprClass"); |
| 3335 | 3341 | return ErrorUnexpected; |
| 3336 | 3342 | case Stmt::ExtVectorElementExprClass: |
| 3337 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ExtVectorElementExprClass"); |
| 3343 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ExtVectorElementExprClass"); |
| 3338 | 3344 | return ErrorUnexpected; |
| 3339 | 3345 | case Stmt::FloatingLiteralClass: |
| 3340 | | emit_warning(c, stmt->getLocStart(), "TODO handle C FloatingLiteralClass"); |
| 3346 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C FloatingLiteralClass"); |
| 3341 | 3347 | return ErrorUnexpected; |
| 3342 | 3348 | case Stmt::FunctionParmPackExprClass: |
| 3343 | | emit_warning(c, stmt->getLocStart(), "TODO handle C FunctionParmPackExprClass"); |
| 3349 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C FunctionParmPackExprClass"); |
| 3344 | 3350 | return ErrorUnexpected; |
| 3345 | 3351 | case Stmt::GNUNullExprClass: |
| 3346 | | emit_warning(c, stmt->getLocStart(), "TODO handle C GNUNullExprClass"); |
| 3352 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C GNUNullExprClass"); |
| 3347 | 3353 | return ErrorUnexpected; |
| 3348 | 3354 | case Stmt::GenericSelectionExprClass: |
| 3349 | | emit_warning(c, stmt->getLocStart(), "TODO handle C GenericSelectionExprClass"); |
| 3355 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C GenericSelectionExprClass"); |
| 3350 | 3356 | return ErrorUnexpected; |
| 3351 | 3357 | case Stmt::ImaginaryLiteralClass: |
| 3352 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ImaginaryLiteralClass"); |
| 3358 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ImaginaryLiteralClass"); |
| 3353 | 3359 | return ErrorUnexpected; |
| 3354 | 3360 | case Stmt::ImplicitValueInitExprClass: |
| 3355 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ImplicitValueInitExprClass"); |
| 3361 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ImplicitValueInitExprClass"); |
| 3356 | 3362 | return ErrorUnexpected; |
| 3357 | 3363 | case Stmt::InitListExprClass: |
| 3358 | | emit_warning(c, stmt->getLocStart(), "TODO handle C InitListExprClass"); |
| 3364 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C InitListExprClass"); |
| 3359 | 3365 | return ErrorUnexpected; |
| 3360 | 3366 | case Stmt::LambdaExprClass: |
| 3361 | | emit_warning(c, stmt->getLocStart(), "TODO handle C LambdaExprClass"); |
| 3367 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C LambdaExprClass"); |
| 3362 | 3368 | return ErrorUnexpected; |
| 3363 | 3369 | case Stmt::MSPropertyRefExprClass: |
| 3364 | | emit_warning(c, stmt->getLocStart(), "TODO handle C MSPropertyRefExprClass"); |
| 3370 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C MSPropertyRefExprClass"); |
| 3365 | 3371 | return ErrorUnexpected; |
| 3366 | 3372 | case Stmt::MSPropertySubscriptExprClass: |
| 3367 | | emit_warning(c, stmt->getLocStart(), "TODO handle C MSPropertySubscriptExprClass"); |
| 3373 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C MSPropertySubscriptExprClass"); |
| 3368 | 3374 | return ErrorUnexpected; |
| 3369 | 3375 | case Stmt::MaterializeTemporaryExprClass: |
| 3370 | | emit_warning(c, stmt->getLocStart(), "TODO handle C MaterializeTemporaryExprClass"); |
| 3376 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C MaterializeTemporaryExprClass"); |
| 3371 | 3377 | return ErrorUnexpected; |
| 3372 | 3378 | case Stmt::NoInitExprClass: |
| 3373 | | emit_warning(c, stmt->getLocStart(), "TODO handle C NoInitExprClass"); |
| 3379 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C NoInitExprClass"); |
| 3374 | 3380 | return ErrorUnexpected; |
| 3375 | 3381 | case Stmt::OMPArraySectionExprClass: |
| 3376 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPArraySectionExprClass"); |
| 3382 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPArraySectionExprClass"); |
| 3377 | 3383 | return ErrorUnexpected; |
| 3378 | 3384 | case Stmt::ObjCArrayLiteralClass: |
| 3379 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCArrayLiteralClass"); |
| 3385 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCArrayLiteralClass"); |
| 3380 | 3386 | return ErrorUnexpected; |
| 3381 | 3387 | case Stmt::ObjCAvailabilityCheckExprClass: |
| 3382 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCAvailabilityCheckExprClass"); |
| 3388 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCAvailabilityCheckExprClass"); |
| 3383 | 3389 | return ErrorUnexpected; |
| 3384 | 3390 | case Stmt::ObjCBoolLiteralExprClass: |
| 3385 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCBoolLiteralExprClass"); |
| 3391 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCBoolLiteralExprClass"); |
| 3386 | 3392 | return ErrorUnexpected; |
| 3387 | 3393 | case Stmt::ObjCBoxedExprClass: |
| 3388 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCBoxedExprClass"); |
| 3394 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCBoxedExprClass"); |
| 3389 | 3395 | return ErrorUnexpected; |
| 3390 | 3396 | case Stmt::ObjCDictionaryLiteralClass: |
| 3391 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCDictionaryLiteralClass"); |
| 3397 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCDictionaryLiteralClass"); |
| 3392 | 3398 | return ErrorUnexpected; |
| 3393 | 3399 | case Stmt::ObjCEncodeExprClass: |
| 3394 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCEncodeExprClass"); |
| 3400 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCEncodeExprClass"); |
| 3395 | 3401 | return ErrorUnexpected; |
| 3396 | 3402 | case Stmt::ObjCIndirectCopyRestoreExprClass: |
| 3397 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCIndirectCopyRestoreExprClass"); |
| 3403 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCIndirectCopyRestoreExprClass"); |
| 3398 | 3404 | return ErrorUnexpected; |
| 3399 | 3405 | case Stmt::ObjCIsaExprClass: |
| 3400 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCIsaExprClass"); |
| 3406 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCIsaExprClass"); |
| 3401 | 3407 | return ErrorUnexpected; |
| 3402 | 3408 | case Stmt::ObjCIvarRefExprClass: |
| 3403 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCIvarRefExprClass"); |
| 3409 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCIvarRefExprClass"); |
| 3404 | 3410 | return ErrorUnexpected; |
| 3405 | 3411 | case Stmt::ObjCMessageExprClass: |
| 3406 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCMessageExprClass"); |
| 3412 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCMessageExprClass"); |
| 3407 | 3413 | return ErrorUnexpected; |
| 3408 | 3414 | case Stmt::ObjCPropertyRefExprClass: |
| 3409 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCPropertyRefExprClass"); |
| 3415 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCPropertyRefExprClass"); |
| 3410 | 3416 | return ErrorUnexpected; |
| 3411 | 3417 | case Stmt::ObjCProtocolExprClass: |
| 3412 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCProtocolExprClass"); |
| 3418 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCProtocolExprClass"); |
| 3413 | 3419 | return ErrorUnexpected; |
| 3414 | 3420 | case Stmt::ObjCSelectorExprClass: |
| 3415 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCSelectorExprClass"); |
| 3421 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCSelectorExprClass"); |
| 3416 | 3422 | return ErrorUnexpected; |
| 3417 | 3423 | case Stmt::ObjCStringLiteralClass: |
| 3418 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCStringLiteralClass"); |
| 3424 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCStringLiteralClass"); |
| 3419 | 3425 | return ErrorUnexpected; |
| 3420 | 3426 | case Stmt::ObjCSubscriptRefExprClass: |
| 3421 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCSubscriptRefExprClass"); |
| 3427 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCSubscriptRefExprClass"); |
| 3422 | 3428 | return ErrorUnexpected; |
| 3423 | 3429 | case Stmt::OffsetOfExprClass: |
| 3424 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OffsetOfExprClass"); |
| 3430 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OffsetOfExprClass"); |
| 3425 | 3431 | return ErrorUnexpected; |
| 3426 | 3432 | case Stmt::OpaqueValueExprClass: |
| 3427 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OpaqueValueExprClass"); |
| 3433 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OpaqueValueExprClass"); |
| 3428 | 3434 | return ErrorUnexpected; |
| 3429 | 3435 | case Stmt::UnresolvedLookupExprClass: |
| 3430 | | emit_warning(c, stmt->getLocStart(), "TODO handle C UnresolvedLookupExprClass"); |
| 3436 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C UnresolvedLookupExprClass"); |
| 3431 | 3437 | return ErrorUnexpected; |
| 3432 | 3438 | case Stmt::UnresolvedMemberExprClass: |
| 3433 | | emit_warning(c, stmt->getLocStart(), "TODO handle C UnresolvedMemberExprClass"); |
| 3439 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C UnresolvedMemberExprClass"); |
| 3434 | 3440 | return ErrorUnexpected; |
| 3435 | 3441 | case Stmt::PackExpansionExprClass: |
| 3436 | | emit_warning(c, stmt->getLocStart(), "TODO handle C PackExpansionExprClass"); |
| 3442 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C PackExpansionExprClass"); |
| 3437 | 3443 | return ErrorUnexpected; |
| 3438 | 3444 | case Stmt::ParenListExprClass: |
| 3439 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ParenListExprClass"); |
| 3445 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ParenListExprClass"); |
| 3440 | 3446 | return ErrorUnexpected; |
| 3441 | 3447 | case Stmt::PredefinedExprClass: |
| 3442 | | emit_warning(c, stmt->getLocStart(), "TODO handle C PredefinedExprClass"); |
| 3448 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C PredefinedExprClass"); |
| 3443 | 3449 | return ErrorUnexpected; |
| 3444 | 3450 | case Stmt::PseudoObjectExprClass: |
| 3445 | | emit_warning(c, stmt->getLocStart(), "TODO handle C PseudoObjectExprClass"); |
| 3451 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C PseudoObjectExprClass"); |
| 3446 | 3452 | return ErrorUnexpected; |
| 3447 | 3453 | case Stmt::ShuffleVectorExprClass: |
| 3448 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ShuffleVectorExprClass"); |
| 3454 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ShuffleVectorExprClass"); |
| 3449 | 3455 | return ErrorUnexpected; |
| 3450 | 3456 | case Stmt::SizeOfPackExprClass: |
| 3451 | | emit_warning(c, stmt->getLocStart(), "TODO handle C SizeOfPackExprClass"); |
| 3457 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C SizeOfPackExprClass"); |
| 3452 | 3458 | return ErrorUnexpected; |
| 3453 | 3459 | case Stmt::StmtExprClass: |
| 3454 | | emit_warning(c, stmt->getLocStart(), "TODO handle C StmtExprClass"); |
| 3460 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C StmtExprClass"); |
| 3455 | 3461 | return ErrorUnexpected; |
| 3456 | 3462 | case Stmt::SubstNonTypeTemplateParmExprClass: |
| 3457 | | emit_warning(c, stmt->getLocStart(), "TODO handle C SubstNonTypeTemplateParmExprClass"); |
| 3463 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C SubstNonTypeTemplateParmExprClass"); |
| 3458 | 3464 | return ErrorUnexpected; |
| 3459 | 3465 | case Stmt::SubstNonTypeTemplateParmPackExprClass: |
| 3460 | | emit_warning(c, stmt->getLocStart(), "TODO handle C SubstNonTypeTemplateParmPackExprClass"); |
| 3466 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C SubstNonTypeTemplateParmPackExprClass"); |
| 3461 | 3467 | return ErrorUnexpected; |
| 3462 | 3468 | case Stmt::TypeTraitExprClass: |
| 3463 | | emit_warning(c, stmt->getLocStart(), "TODO handle C TypeTraitExprClass"); |
| 3469 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C TypeTraitExprClass"); |
| 3464 | 3470 | return ErrorUnexpected; |
| 3465 | 3471 | case Stmt::TypoExprClass: |
| 3466 | | emit_warning(c, stmt->getLocStart(), "TODO handle C TypoExprClass"); |
| 3472 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C TypoExprClass"); |
| 3467 | 3473 | return ErrorUnexpected; |
| 3468 | 3474 | case Stmt::VAArgExprClass: |
| 3469 | | emit_warning(c, stmt->getLocStart(), "TODO handle C VAArgExprClass"); |
| 3475 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C VAArgExprClass"); |
| 3470 | 3476 | return ErrorUnexpected; |
| 3471 | 3477 | case Stmt::GotoStmtClass: |
| 3472 | | emit_warning(c, stmt->getLocStart(), "TODO handle C GotoStmtClass"); |
| 3478 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C GotoStmtClass"); |
| 3473 | 3479 | return ErrorUnexpected; |
| 3474 | 3480 | case Stmt::IndirectGotoStmtClass: |
| 3475 | | emit_warning(c, stmt->getLocStart(), "TODO handle C IndirectGotoStmtClass"); |
| 3481 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C IndirectGotoStmtClass"); |
| 3476 | 3482 | return ErrorUnexpected; |
| 3477 | 3483 | case Stmt::LabelStmtClass: |
| 3478 | | emit_warning(c, stmt->getLocStart(), "TODO handle C LabelStmtClass"); |
| 3484 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C LabelStmtClass"); |
| 3479 | 3485 | return ErrorUnexpected; |
| 3480 | 3486 | case Stmt::MSDependentExistsStmtClass: |
| 3481 | | emit_warning(c, stmt->getLocStart(), "TODO handle C MSDependentExistsStmtClass"); |
| 3487 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C MSDependentExistsStmtClass"); |
| 3482 | 3488 | return ErrorUnexpected; |
| 3483 | 3489 | case Stmt::OMPAtomicDirectiveClass: |
| 3484 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPAtomicDirectiveClass"); |
| 3490 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPAtomicDirectiveClass"); |
| 3485 | 3491 | return ErrorUnexpected; |
| 3486 | 3492 | case Stmt::OMPBarrierDirectiveClass: |
| 3487 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPBarrierDirectiveClass"); |
| 3493 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPBarrierDirectiveClass"); |
| 3488 | 3494 | return ErrorUnexpected; |
| 3489 | 3495 | case Stmt::OMPCancelDirectiveClass: |
| 3490 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPCancelDirectiveClass"); |
| 3496 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPCancelDirectiveClass"); |
| 3491 | 3497 | return ErrorUnexpected; |
| 3492 | 3498 | case Stmt::OMPCancellationPointDirectiveClass: |
| 3493 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPCancellationPointDirectiveClass"); |
| 3499 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPCancellationPointDirectiveClass"); |
| 3494 | 3500 | return ErrorUnexpected; |
| 3495 | 3501 | case Stmt::OMPCriticalDirectiveClass: |
| 3496 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPCriticalDirectiveClass"); |
| 3502 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPCriticalDirectiveClass"); |
| 3497 | 3503 | return ErrorUnexpected; |
| 3498 | 3504 | case Stmt::OMPFlushDirectiveClass: |
| 3499 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPFlushDirectiveClass"); |
| 3505 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPFlushDirectiveClass"); |
| 3500 | 3506 | return ErrorUnexpected; |
| 3501 | 3507 | case Stmt::OMPDistributeDirectiveClass: |
| 3502 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPDistributeDirectiveClass"); |
| 3508 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPDistributeDirectiveClass"); |
| 3503 | 3509 | return ErrorUnexpected; |
| 3504 | 3510 | case Stmt::OMPDistributeParallelForDirectiveClass: |
| 3505 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPDistributeParallelForDirectiveClass"); |
| 3511 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPDistributeParallelForDirectiveClass"); |
| 3506 | 3512 | return ErrorUnexpected; |
| 3507 | 3513 | case Stmt::OMPDistributeParallelForSimdDirectiveClass: |
| 3508 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPDistributeParallelForSimdDirectiveClass"); |
| 3514 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPDistributeParallelForSimdDirectiveClass"); |
| 3509 | 3515 | return ErrorUnexpected; |
| 3510 | 3516 | case Stmt::OMPDistributeSimdDirectiveClass: |
| 3511 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPDistributeSimdDirectiveClass"); |
| 3517 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPDistributeSimdDirectiveClass"); |
| 3512 | 3518 | return ErrorUnexpected; |
| 3513 | 3519 | case Stmt::OMPForDirectiveClass: |
| 3514 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPForDirectiveClass"); |
| 3520 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPForDirectiveClass"); |
| 3515 | 3521 | return ErrorUnexpected; |
| 3516 | 3522 | case Stmt::OMPForSimdDirectiveClass: |
| 3517 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPForSimdDirectiveClass"); |
| 3523 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPForSimdDirectiveClass"); |
| 3518 | 3524 | return ErrorUnexpected; |
| 3519 | 3525 | case Stmt::OMPParallelForDirectiveClass: |
| 3520 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPParallelForDirectiveClass"); |
| 3526 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPParallelForDirectiveClass"); |
| 3521 | 3527 | return ErrorUnexpected; |
| 3522 | 3528 | case Stmt::OMPParallelForSimdDirectiveClass: |
| 3523 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPParallelForSimdDirectiveClass"); |
| 3529 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPParallelForSimdDirectiveClass"); |
| 3524 | 3530 | return ErrorUnexpected; |
| 3525 | 3531 | case Stmt::OMPSimdDirectiveClass: |
| 3526 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPSimdDirectiveClass"); |
| 3532 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPSimdDirectiveClass"); |
| 3527 | 3533 | return ErrorUnexpected; |
| 3528 | 3534 | case Stmt::OMPTargetParallelForSimdDirectiveClass: |
| 3529 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTargetParallelForSimdDirectiveClass"); |
| 3535 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTargetParallelForSimdDirectiveClass"); |
| 3530 | 3536 | return ErrorUnexpected; |
| 3531 | 3537 | case Stmt::OMPTargetSimdDirectiveClass: |
| 3532 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTargetSimdDirectiveClass"); |
| 3538 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTargetSimdDirectiveClass"); |
| 3533 | 3539 | return ErrorUnexpected; |
| 3534 | 3540 | case Stmt::OMPTargetTeamsDistributeDirectiveClass: |
| 3535 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTargetTeamsDistributeDirectiveClass"); |
| 3541 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTargetTeamsDistributeDirectiveClass"); |
| 3536 | 3542 | return ErrorUnexpected; |
| 3537 | 3543 | case Stmt::OMPTargetTeamsDistributeParallelForDirectiveClass: |
| 3538 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTargetTeamsDistributeParallelForDirectiveClass"); |
| 3544 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTargetTeamsDistributeParallelForDirectiveClass"); |
| 3539 | 3545 | return ErrorUnexpected; |
| 3540 | 3546 | case Stmt::OMPTargetTeamsDistributeParallelForSimdDirectiveClass: |
| 3541 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTargetTeamsDistributeParallelForSimdDirectiveClass"); |
| 3547 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTargetTeamsDistributeParallelForSimdDirectiveClass"); |
| 3542 | 3548 | return ErrorUnexpected; |
| 3543 | 3549 | case Stmt::OMPTargetTeamsDistributeSimdDirectiveClass: |
| 3544 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTargetTeamsDistributeSimdDirectiveClass"); |
| 3550 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTargetTeamsDistributeSimdDirectiveClass"); |
| 3545 | 3551 | return ErrorUnexpected; |
| 3546 | 3552 | case Stmt::OMPTaskLoopDirectiveClass: |
| 3547 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTaskLoopDirectiveClass"); |
| 3553 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTaskLoopDirectiveClass"); |
| 3548 | 3554 | return ErrorUnexpected; |
| 3549 | 3555 | case Stmt::OMPTaskLoopSimdDirectiveClass: |
| 3550 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTaskLoopSimdDirectiveClass"); |
| 3556 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTaskLoopSimdDirectiveClass"); |
| 3551 | 3557 | return ErrorUnexpected; |
| 3552 | 3558 | case Stmt::OMPTeamsDistributeDirectiveClass: |
| 3553 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTeamsDistributeDirectiveClass"); |
| 3559 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTeamsDistributeDirectiveClass"); |
| 3554 | 3560 | return ErrorUnexpected; |
| 3555 | 3561 | case Stmt::OMPTeamsDistributeParallelForDirectiveClass: |
| 3556 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTeamsDistributeParallelForDirectiveClass"); |
| 3562 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTeamsDistributeParallelForDirectiveClass"); |
| 3557 | 3563 | return ErrorUnexpected; |
| 3558 | 3564 | case Stmt::OMPTeamsDistributeParallelForSimdDirectiveClass: |
| 3559 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTeamsDistributeParallelForSimdDirectiveClass"); |
| 3565 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTeamsDistributeParallelForSimdDirectiveClass"); |
| 3560 | 3566 | return ErrorUnexpected; |
| 3561 | 3567 | case Stmt::OMPTeamsDistributeSimdDirectiveClass: |
| 3562 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTeamsDistributeSimdDirectiveClass"); |
| 3568 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTeamsDistributeSimdDirectiveClass"); |
| 3563 | 3569 | return ErrorUnexpected; |
| 3564 | 3570 | case Stmt::OMPMasterDirectiveClass: |
| 3565 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPMasterDirectiveClass"); |
| 3571 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPMasterDirectiveClass"); |
| 3566 | 3572 | return ErrorUnexpected; |
| 3567 | 3573 | case Stmt::OMPOrderedDirectiveClass: |
| 3568 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPOrderedDirectiveClass"); |
| 3574 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPOrderedDirectiveClass"); |
| 3569 | 3575 | return ErrorUnexpected; |
| 3570 | 3576 | case Stmt::OMPParallelDirectiveClass: |
| 3571 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPParallelDirectiveClass"); |
| 3577 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPParallelDirectiveClass"); |
| 3572 | 3578 | return ErrorUnexpected; |
| 3573 | 3579 | case Stmt::OMPParallelSectionsDirectiveClass: |
| 3574 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPParallelSectionsDirectiveClass"); |
| 3580 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPParallelSectionsDirectiveClass"); |
| 3575 | 3581 | return ErrorUnexpected; |
| 3576 | 3582 | case Stmt::OMPSectionDirectiveClass: |
| 3577 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPSectionDirectiveClass"); |
| 3583 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPSectionDirectiveClass"); |
| 3578 | 3584 | return ErrorUnexpected; |
| 3579 | 3585 | case Stmt::OMPSectionsDirectiveClass: |
| 3580 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPSectionsDirectiveClass"); |
| 3586 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPSectionsDirectiveClass"); |
| 3581 | 3587 | return ErrorUnexpected; |
| 3582 | 3588 | case Stmt::OMPSingleDirectiveClass: |
| 3583 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPSingleDirectiveClass"); |
| 3589 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPSingleDirectiveClass"); |
| 3584 | 3590 | return ErrorUnexpected; |
| 3585 | 3591 | case Stmt::OMPTargetDataDirectiveClass: |
| 3586 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTargetDataDirectiveClass"); |
| 3592 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTargetDataDirectiveClass"); |
| 3587 | 3593 | return ErrorUnexpected; |
| 3588 | 3594 | case Stmt::OMPTargetDirectiveClass: |
| 3589 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTargetDirectiveClass"); |
| 3595 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTargetDirectiveClass"); |
| 3590 | 3596 | return ErrorUnexpected; |
| 3591 | 3597 | case Stmt::OMPTargetEnterDataDirectiveClass: |
| 3592 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTargetEnterDataDirectiveClass"); |
| 3598 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTargetEnterDataDirectiveClass"); |
| 3593 | 3599 | return ErrorUnexpected; |
| 3594 | 3600 | case Stmt::OMPTargetExitDataDirectiveClass: |
| 3595 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTargetExitDataDirectiveClass"); |
| 3601 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTargetExitDataDirectiveClass"); |
| 3596 | 3602 | return ErrorUnexpected; |
| 3597 | 3603 | case Stmt::OMPTargetParallelDirectiveClass: |
| 3598 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTargetParallelDirectiveClass"); |
| 3604 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTargetParallelDirectiveClass"); |
| 3599 | 3605 | return ErrorUnexpected; |
| 3600 | 3606 | case Stmt::OMPTargetParallelForDirectiveClass: |
| 3601 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTargetParallelForDirectiveClass"); |
| 3607 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTargetParallelForDirectiveClass"); |
| 3602 | 3608 | return ErrorUnexpected; |
| 3603 | 3609 | case Stmt::OMPTargetTeamsDirectiveClass: |
| 3604 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTargetTeamsDirectiveClass"); |
| 3610 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTargetTeamsDirectiveClass"); |
| 3605 | 3611 | return ErrorUnexpected; |
| 3606 | 3612 | case Stmt::OMPTargetUpdateDirectiveClass: |
| 3607 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTargetUpdateDirectiveClass"); |
| 3613 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTargetUpdateDirectiveClass"); |
| 3608 | 3614 | return ErrorUnexpected; |
| 3609 | 3615 | case Stmt::OMPTaskDirectiveClass: |
| 3610 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTaskDirectiveClass"); |
| 3616 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTaskDirectiveClass"); |
| 3611 | 3617 | return ErrorUnexpected; |
| 3612 | 3618 | case Stmt::OMPTaskgroupDirectiveClass: |
| 3613 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTaskgroupDirectiveClass"); |
| 3619 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTaskgroupDirectiveClass"); |
| 3614 | 3620 | return ErrorUnexpected; |
| 3615 | 3621 | case Stmt::OMPTaskwaitDirectiveClass: |
| 3616 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTaskwaitDirectiveClass"); |
| 3622 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTaskwaitDirectiveClass"); |
| 3617 | 3623 | return ErrorUnexpected; |
| 3618 | 3624 | case Stmt::OMPTaskyieldDirectiveClass: |
| 3619 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTaskyieldDirectiveClass"); |
| 3625 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTaskyieldDirectiveClass"); |
| 3620 | 3626 | return ErrorUnexpected; |
| 3621 | 3627 | case Stmt::OMPTeamsDirectiveClass: |
| 3622 | | emit_warning(c, stmt->getLocStart(), "TODO handle C OMPTeamsDirectiveClass"); |
| 3628 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C OMPTeamsDirectiveClass"); |
| 3623 | 3629 | return ErrorUnexpected; |
| 3624 | 3630 | case Stmt::ObjCAtCatchStmtClass: |
| 3625 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCAtCatchStmtClass"); |
| 3631 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCAtCatchStmtClass"); |
| 3626 | 3632 | return ErrorUnexpected; |
| 3627 | 3633 | case Stmt::ObjCAtFinallyStmtClass: |
| 3628 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCAtFinallyStmtClass"); |
| 3634 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCAtFinallyStmtClass"); |
| 3629 | 3635 | return ErrorUnexpected; |
| 3630 | 3636 | case Stmt::ObjCAtSynchronizedStmtClass: |
| 3631 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCAtSynchronizedStmtClass"); |
| 3637 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCAtSynchronizedStmtClass"); |
| 3632 | 3638 | return ErrorUnexpected; |
| 3633 | 3639 | case Stmt::ObjCAtThrowStmtClass: |
| 3634 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCAtThrowStmtClass"); |
| 3640 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCAtThrowStmtClass"); |
| 3635 | 3641 | return ErrorUnexpected; |
| 3636 | 3642 | case Stmt::ObjCAtTryStmtClass: |
| 3637 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCAtTryStmtClass"); |
| 3643 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCAtTryStmtClass"); |
| 3638 | 3644 | return ErrorUnexpected; |
| 3639 | 3645 | case Stmt::ObjCAutoreleasePoolStmtClass: |
| 3640 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCAutoreleasePoolStmtClass"); |
| 3646 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCAutoreleasePoolStmtClass"); |
| 3641 | 3647 | return ErrorUnexpected; |
| 3642 | 3648 | case Stmt::ObjCForCollectionStmtClass: |
| 3643 | | emit_warning(c, stmt->getLocStart(), "TODO handle C ObjCForCollectionStmtClass"); |
| 3649 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ObjCForCollectionStmtClass"); |
| 3644 | 3650 | return ErrorUnexpected; |
| 3645 | 3651 | case Stmt::SEHExceptStmtClass: |
| 3646 | | emit_warning(c, stmt->getLocStart(), "TODO handle C SEHExceptStmtClass"); |
| 3652 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C SEHExceptStmtClass"); |
| 3647 | 3653 | return ErrorUnexpected; |
| 3648 | 3654 | case Stmt::SEHFinallyStmtClass: |
| 3649 | | emit_warning(c, stmt->getLocStart(), "TODO handle C SEHFinallyStmtClass"); |
| 3655 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C SEHFinallyStmtClass"); |
| 3650 | 3656 | return ErrorUnexpected; |
| 3651 | 3657 | case Stmt::SEHLeaveStmtClass: |
| 3652 | | emit_warning(c, stmt->getLocStart(), "TODO handle C SEHLeaveStmtClass"); |
| 3658 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C SEHLeaveStmtClass"); |
| 3653 | 3659 | return ErrorUnexpected; |
| 3654 | 3660 | case Stmt::SEHTryStmtClass: |
| 3655 | | emit_warning(c, stmt->getLocStart(), "TODO handle C SEHTryStmtClass"); |
| 3661 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C SEHTryStmtClass"); |
| 3656 | 3662 | return ErrorUnexpected; |
| 3657 | 3663 | case Stmt::FixedPointLiteralClass: |
| 3658 | | emit_warning(c, stmt->getLocStart(), "TODO handle C FixedPointLiteralClass"); |
| 3664 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C FixedPointLiteralClass"); |
| 3665 | return ErrorUnexpected; |
| 3666 | case Stmt::ConstantExprClass: |
| 3667 | emit_warning(c, stmt->getBeginLoc(), "TODO handle C ConstantExprClass"); |
| 3659 | 3668 | return ErrorUnexpected; |
| 3660 | 3669 | } |
| 3661 | 3670 | zig_unreachable(); |