reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/lib/AST/ExprConstant.cpp
 7935   const Expr *SubExpr = E->getSubExpr();
 7937   switch (E->getCastKind()) {
 7950     if (!E->getType()->isVoidPointerType()) {
 7954                                           E->getType()->getPointeeType()) &&
 7962           CCEDiag(E, diag::note_constexpr_invalid_cast)
 7965           CCEDiag(E, diag::note_constexpr_invalid_cast) << 2;
 7968     if (E->getCastKind() == CK_AddressSpaceConversion && Result.IsNullPtr)
 7969       ZeroInitialization(E);
 7974     if (!evaluatePointer(E->getSubExpr(), Result))
 7981     return HandleLValueBasePath(Info, E, E->getSubExpr()->getType()->
 7981     return HandleLValueBasePath(Info, E, E->getSubExpr()->getType()->
 7986     if (!Visit(E->getSubExpr()))
 7990     return HandleBaseToDerivedCast(Info, E, Result);
 7993     if (!Visit(E->getSubExpr()))
 7995     return HandleDynamicCast(Info, cast<ExplicitCastExpr>(E), Result);
 7998     VisitIgnoredValue(E->getSubExpr());
 7999     return ZeroInitialization(E);
 8002     CCEDiag(E, diag::note_constexpr_invalid_cast) << 2;
 8009       unsigned Size = Info.Ctx.getTypeSize(E->getType());
 8037       Result.addArray(Info, E, CAT);
 8039       Result.addUnsizedArray(Info, E, AT->getElementType());
 8048     if (!evaluateLValue(E->getSubExpr(), LVal))
 8053     if (!handleLValueToRValueConversion(Info, E, E->getSubExpr()->getType(),
 8053     if (!handleLValueToRValueConversion(Info, E, E->getSubExpr()->getType(),
 8057     return Success(RVal, E);
 8061   return ExprEvaluatorBaseTy::VisitCastExpr(E);