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

References

tools/clang/lib/AST/ExprConstant.cpp
 7800     Result.set(E);
 7820     Result.setFrom(Info.Ctx, V);
 7824     Result.setNull(Info.Ctx, E->getType());
 7860     Result = *Info.CurrentCall->This;
 7868       if (!HandleLValueMember(Info, E, Result,
 7875         if (!handleLValueToRValueConversion(Info, E, E->getType(), Result,
 7879         Result.setFrom(Info.Ctx, RVal);
 7891     Result.setFrom(Info.Ctx, LValResult);
 7915   bool EvalPtrOK = evaluatePointer(PExp, Result);
 7927   return HandleLValueArrayAdjustment(Info, E, Result, Pointee, Offset);
 7931   return evaluateLValue(E->getSubExpr(), Result);
 7951       if (!Result.InvalidBase && !Result.Designator.Invalid &&
 7951       if (!Result.InvalidBase && !Result.Designator.Invalid &&
 7952           !Result.IsNullPtr &&
 7953           Info.Ctx.hasSameUnqualifiedType(Result.Designator.getType(Info.Ctx),
 7960         Result.Designator.setInvalid();
 7968     if (E->getCastKind() == CK_AddressSpaceConversion && Result.IsNullPtr)
 7974     if (!evaluatePointer(E->getSubExpr(), Result))
 7976     if (!Result.Base && Result.Offset.isZero())
 7976     if (!Result.Base && Result.Offset.isZero())
 7983                                 Result);
 7988     if (!Result.Base && Result.Offset.isZero())
 7988     if (!Result.Base && Result.Offset.isZero())
 7990     return HandleBaseToDerivedCast(Info, E, Result);
 7995     return HandleDynamicCast(Info, cast<ExplicitCastExpr>(E), Result);
 8011       Result.Base = (Expr*)nullptr;
 8012       Result.InvalidBase = false;
 8013       Result.Offset = CharUnits::fromQuantity(N);
 8014       Result.Designator.setInvalid();
 8015       Result.IsNullPtr = false;
 8019       Result.setFrom(Info.Ctx, Value);
 8026       if (!evaluateLValue(SubExpr, Result))
 8030           SubExpr, SubExpr->getType(), false, Result);
 8031       if (!EvaluateInPlace(Value, Info, Result, SubExpr))
 8037       Result.addArray(Info, E, CAT);
 8039       Result.addUnsizedArray(Info, E, AT->getElementType());
 8044     return evaluateLValue(SubExpr, Result);
 8056              evaluateLValueAsAllocSize(Info, LVal.Base, Result);
 8120   Result.setInvalid(E);
 8122   Result.addUnsizedArray(Info, E, PointeeTy);
 8140     return evaluateLValue(E->getArg(0), Result);
 8145     if (!evaluatePointer(E->getArg(0), Result))
 8148     LValue OffsetResult(Result);
 8177         Result.Designator.setInvalid();
 8189       Result.Designator.setInvalid();
 8204     return HandleOperatorNewCall(Info, E, Result);
 8206     return evaluatePointer(E->getArg(0), Result);
 8241     if (!Result.checkNullPointerForFoldAccess(Info, E, AK_Read) ||
 8242         Result.Designator.Invalid)
 8244     QualType CharTy = Result.Designator.getType(Info.Ctx);
 8297       if (!handleLValueToRValueConversion(Info, E, CharTy, Result, Char) ||
 8304       if (!HandleLValueArrayAdjustment(Info, E, Result, CharTy, 1))
 8338     LValue Dest = Result;
 8482     if (!EvaluatePointer(E->getPlacementArg(0), Result, Info))
 8484     if (Result.Designator.Invalid)
 8622     CompleteObject Obj = findCompleteObject(Info, E, AK, Result, AllocType);
 8623     if (!Obj || !findSubobject(Info, E, Obj, Result.Designator, Handler))
 8635     Val = Info.createHeapAlloc(E, AllocType, Result);
 8641     if (!EvaluateArrayNewInitList(Info, Result, *Val, ResizedArrayILE,
 8645     if (!EvaluateInPlace(*Val, Info, Result, Init))
 8654     Result.addArray(Info, E, cast<ConstantArrayType>(AT));