Changeset View
Changeset View
Standalone View
Standalone View
lib/AST/ExprConstant.cpp
- This file is larger than 256 KB, so syntax highlighting is disabled by default.
Show First 20 Lines • Show All 9154 Lines • ▼ Show 20 Line(s) | |||||
9155 | /// HandleCast - This is used to evaluate implicit or explicit casts where the | 9155 | /// HandleCast - This is used to evaluate implicit or explicit casts where the | ||
9156 | /// result type is integer. | 9156 | /// result type is integer. | ||
9157 | bool IntExprEvaluator::VisitCastExpr(const CastExpr *E) { | 9157 | bool IntExprEvaluator::VisitCastExpr(const CastExpr *E) { | ||
9158 | const Expr *SubExpr = E->getSubExpr(); | 9158 | const Expr *SubExpr = E->getSubExpr(); | ||
9159 | QualType DestType = E->getType(); | 9159 | QualType DestType = E->getType(); | ||
9160 | QualType SrcType = SubExpr->getType(); | 9160 | QualType SrcType = SubExpr->getType(); | ||
9161 | 9161 | | |||
9162 | switch (E->getCastKind()) { | 9162 | switch (E->getCastKind()) { | ||
9163 | case CK_FloatingToFixedPoint: | ||||
9164 | llvm_unreachable("CK_FloatingToFixedPoint"); | ||||
9163 | case CK_FixedPointCast: | 9165 | case CK_FixedPointCast: | ||
9164 | llvm_unreachable("CK_FixedPointCast"); // TODO | 9166 | llvm_unreachable("CK_FixedPointCast"); // TODO | ||
9165 | case CK_IntegralToFixedPoint: | 9167 | case CK_IntegralToFixedPoint: | ||
9166 | llvm_unreachable( | 9168 | llvm_unreachable( | ||
9167 | "IntExprEvaluator::VisitCastExpr CK_IntegralToFixedPoint"); // TODO | 9169 | "IntExprEvaluator::VisitCastExpr CK_IntegralToFixedPoint"); // TODO | ||
9168 | case CK_FixedPointToFloating: | 9170 | case CK_FixedPointToFloating: | ||
9169 | llvm_unreachable("CK_FixedPointCast"); // TODO | 9171 | llvm_unreachable("CK_FixedPointToFloating"); // TODO | ||
9170 | case CK_BaseToDerived: | 9172 | case CK_BaseToDerived: | ||
9171 | case CK_DerivedToBase: | 9173 | case CK_DerivedToBase: | ||
9172 | case CK_UncheckedDerivedToBase: | 9174 | case CK_UncheckedDerivedToBase: | ||
9173 | case CK_Dynamic: | 9175 | case CK_Dynamic: | ||
9174 | case CK_ToUnion: | 9176 | case CK_ToUnion: | ||
9175 | case CK_ArrayToPointerDecay: | 9177 | case CK_ArrayToPointerDecay: | ||
9176 | case CK_FunctionToPointerDecay: | 9178 | case CK_FunctionToPointerDecay: | ||
9177 | case CK_NullToPointer: | 9179 | case CK_NullToPointer: | ||
▲ Show 20 Lines • Show All 576 Lines • ▼ Show 20 Line(s) | 9734 | bool ComplexExprEvaluator::VisitImaginaryLiteral(const ImaginaryLiteral *E) { | |||
9754 | } | 9756 | } | ||
9755 | } | 9757 | } | ||
9756 | 9758 | | |||
9757 | bool ComplexExprEvaluator::VisitCastExpr(const CastExpr *E) { | 9759 | bool ComplexExprEvaluator::VisitCastExpr(const CastExpr *E) { | ||
9758 | 9760 | | |||
9759 | switch (E->getCastKind()) { | 9761 | switch (E->getCastKind()) { | ||
9760 | case CK_FixedPointCast: | 9762 | case CK_FixedPointCast: | ||
9761 | llvm_unreachable("CK_FixedPointCast"); // TODO | 9763 | llvm_unreachable("CK_FixedPointCast"); // TODO | ||
9764 | case CK_FloatingToFixedPoint: | ||||
9765 | llvm_unreachable("CK_FloatingToFixedPoint"); | ||||
9762 | case CK_IntegralToFixedPoint: | 9766 | case CK_IntegralToFixedPoint: | ||
9763 | llvm_unreachable( | 9767 | llvm_unreachable( | ||
9764 | "ComplexExprEvaluator::VisitCastExpr CK_IntegralToFixedPoint"); // TODO | 9768 | "ComplexExprEvaluator::VisitCastExpr CK_IntegralToFixedPoint"); // TODO | ||
9765 | case CK_FixedPointToFloating: | 9769 | case CK_FixedPointToFloating: | ||
9766 | llvm_unreachable("CK_FixedPointCast"); // TODO | 9770 | llvm_unreachable("CK_FixedPointToFloating"); // TODO | ||
9767 | case CK_BitCast: | 9771 | case CK_BitCast: | ||
9768 | case CK_BaseToDerived: | 9772 | case CK_BaseToDerived: | ||
9769 | case CK_DerivedToBase: | 9773 | case CK_DerivedToBase: | ||
9770 | case CK_UncheckedDerivedToBase: | 9774 | case CK_UncheckedDerivedToBase: | ||
9771 | case CK_Dynamic: | 9775 | case CK_Dynamic: | ||
9772 | case CK_ToUnion: | 9776 | case CK_ToUnion: | ||
9773 | case CK_ArrayToPointerDecay: | 9777 | case CK_ArrayToPointerDecay: | ||
9774 | case CK_FunctionToPointerDecay: | 9778 | case CK_FunctionToPointerDecay: | ||
▲ Show 20 Lines • Show All 1431 Lines • Show Last 20 Lines |