Lines Matching refs:CastE

260     QualType T, QualType ExTy, const CastExpr* CastE, StmtNodeBuilder& Bldr,  in handleLValueBitCast()  argument
263 assert(!CastE->getType()->isLValueReferenceType()); in handleLValueBitCast()
266 assert(!CastE->getType()->isRValueReferenceType()); in handleLValueBitCast()
273 if (CastE->getCastKind() == CK_BooleanToSignedIntegral && V.isValid()) in handleLValueBitCast()
276 state = state->BindExpr(CastE, LCtx, V); in handleLValueBitCast()
280 Bldr.generateNode(CastE, Pred, state); in handleLValueBitCast()
285 void ExprEngine::VisitCast(const CastExpr *CastE, const Expr *Ex, in VisitCast() argument
289 getCheckerManager().runCheckersForPreStmt(dstPreStmt, Pred, CastE, *this); in VisitCast()
291 if (CastE->getCastKind() == CK_LValueToRValue || in VisitCast()
292 CastE->getCastKind() == CK_LValueToRValueBitCast) { in VisitCast()
298 evalLoad(Dst, CastE, CastE, subExprNode, state, state->getSVal(Ex, LCtx)); in VisitCast()
304 QualType T = CastE->getType(); in VisitCast()
307 if (const ExplicitCastExpr *ExCast=dyn_cast_or_null<ExplicitCastExpr>(CastE)) in VisitCast()
318 switch (CastE->getCastKind()) { in VisitCast()
346 state = state->BindExpr(CastE, LCtx, V); in VisitCast()
347 Bldr.generateNode(CastE, Pred, state); in VisitCast()
357 state = state->BindExpr(CastE, LCtx, V); in VisitCast()
358 Bldr.generateNode(CastE, Pred, state); in VisitCast()
363 handleLValueBitCast(state, Ex, LCtx, T, ExTy, CastE, Bldr, Pred); in VisitCast()
375 state = state->BindExpr(CastE, LCtx, UnknownVal()); in VisitCast()
376 Bldr.generateNode(CastE, Pred, state); in VisitCast()
381 handleLValueBitCast(state, Ex, LCtx, T, ExTy, CastE, Bldr, Pred); in VisitCast()
413 handleLValueBitCast(state, Ex, LCtx, T, ExTy, CastE, Bldr, Pred); in VisitCast()
423 state = state->BindExpr(CastE, LCtx, V); in VisitCast()
424 Bldr.generateNode(CastE, Pred, state); in VisitCast()
431 val = getStoreManager().evalDerivedToBase(val, CastE); in VisitCast()
432 state = state->BindExpr(CastE, LCtx, val); in VisitCast()
433 Bldr.generateNode(CastE, Pred, state); in VisitCast()
441 QualType resultType = CastE->getType(); in VisitCast()
442 if (CastE->isGLValue()) in VisitCast()
459 Bldr.generateSink(CastE, Pred, state); in VisitCast()
463 state = state->BindExpr(CastE, LCtx, in VisitCast()
470 svalBuilder.conjureSymbolVal(nullptr, CastE, LCtx, resultType, in VisitCast()
472 state = state->BindExpr(CastE, LCtx, NewSym); in VisitCast()
475 state = state->BindExpr(CastE, LCtx, val); in VisitCast()
477 Bldr.generateNode(CastE, Pred, state); in VisitCast()
482 QualType resultType = CastE->getType(); in VisitCast()
483 if (CastE->isGLValue()) in VisitCast()
494 svalBuilder.conjureSymbolVal(nullptr, CastE, LCtx, resultType, in VisitCast()
497 state = state->BindExpr(CastE, LCtx, val); in VisitCast()
498 Bldr.generateNode(CastE, Pred, state); in VisitCast()
502 SVal V = svalBuilder.makeNullWithType(CastE->getType()); in VisitCast()
503 state = state->BindExpr(CastE, LCtx, V); in VisitCast()
504 Bldr.generateNode(CastE, Pred, state); in VisitCast()
509 state = state->BindExpr(CastE, LCtx, V); in VisitCast()
510 Bldr.generateNode(CastE, Pred, state); in VisitCast()
520 CastE->path(), *PTMSV, CastE->getCastKind())); in VisitCast()
521 state = state->BindExpr(CastE, LCtx, CastedPTMSV); in VisitCast()
522 Bldr.generateNode(CastE, Pred, state); in VisitCast()
532 QualType resultType = CastE->getType(); in VisitCast()
533 if (CastE->isGLValue()) in VisitCast()
536 /*symbolTag=*/nullptr, CastE, LCtx, resultType, in VisitCast()
538 state = state->BindExpr(CastE, LCtx, result); in VisitCast()
539 Bldr.generateNode(CastE, Pred, state); in VisitCast()