Home | History | Annotate | Download | only in AST

Lines Matching refs:LVal

1118                                           QualType Type, const LValue &LVal) {
1121 APValue::LValueBase Base = LVal.getLValueBase();
1122 const SubobjectDesignator &Designator = LVal.getLValueDesignator();
1141 LVal.getLValueCallIndex() == 0) &&
1249 LValue LVal;
1250 LVal.setFrom(Info.Ctx, Value);
1251 return CheckLValueConstantExpression(Info, DiagLoc, Type, LVal);
1258 const ValueDecl *GetLValueBaseDecl(const LValue &LVal) {
1259 return LVal.Base.dyn_cast<const ValueDecl*>();
1689 /// Update LVal to refer to the given field, which must be a member of the type
1690 /// currently described by LVal.
1691 static bool HandleLValueMember(EvalInfo &Info, const Expr *E, LValue &LVal,
1700 LVal.Offset += Info.Ctx.toCharUnitsFromBits(RL->getFieldOffset(I));
1701 LVal.addDecl(Info, E, FD);
1705 /// Update LVal to refer to the given indirect field.
1707 LValue &LVal,
1711 if (!HandleLValueMember(Info, E, LVal, cast<FieldDecl>(*C)))
1740 /// \param LVal - The pointer value to be updated.
1741 /// \param EltTy - The pointee type represented by LVal.
1744 LValue &LVal, QualType EltTy,
1751 LVal.Offset += Adjustment * SizeOfPointee;
1752 LVal.adjustIndex(Info, E, Adjustment);
1758 /// \param LVal - The lvalue to be updated.
1762 LValue &LVal, QualType EltTy,
1768 LVal.Offset += SizeOfComponent;
1770 LVal.addComplex(Info, E, EltTy, Imag);
2277 const LValue &LVal, QualType LValType) {
2278 if (!LVal.Base) {
2284 if (LVal.CallIndex) {
2285 Frame = Info.getCallFrame(LVal.CallIndex);
2288 << AK << LVal.Base.is<const ValueDecl*>();
2289 NoteLValueLocation(Info, LVal.Base);
2309 QualType BaseType = getType(LVal.Base);
2311 if (const ValueDecl *D = LVal.Base.dyn_cast<const ValueDecl*>()) {
2390 const Expr *Base = LVal.Base.dyn_cast<const Expr*>();
2450 if (LVal.getLValueBase() == Info.EvaluatingDecl) {
2473 /// \param LVal - The glvalue on which we are attempting to perform this action.
2477 const LValue &LVal, APValue &RVal) {
2478 if (LVal.Designator.Invalid)
2482 const Expr *Base = LVal.Base.dyn_cast<const Expr*>();
2483 if (!LVal.Designator.Invalid && Base && !LVal.CallIndex &&
2498 return extractSubobject(Info, Conv, LitObj, LVal.Designator, RVal);
2505 return extractSubobject(Info, Conv, StrObj, LVal.Designator, RVal);
2509 CompleteObject Obj = findCompleteObject(Info, Conv, AK_Read, LVal, Type);
2510 return Obj && extractSubobject(Info, Conv, Obj, LVal.Designator, RVal);
2513 /// Perform an assignment of Val to LVal. Takes ownership of Val.
2514 static bool handleAssignment(EvalInfo &Info, const Expr *E, const LValue &LVal,
2516 if (LVal.Designator.Invalid)
2524 CompleteObject Obj = findCompleteObject(Info, E, AK_Assign, LVal, LValType);
2525 return Obj && modifySubobject(Info, E, Obj, LVal.Designator, Val);
2617 LValue LVal;
2618 LVal.setFrom(Info.Ctx, Subobj);
2619 if (!HandleLValueArrayAdjustment(Info, E, LVal, PointeeType, Offset))
2621 LVal.moveInto(Subobj);
2632 /// Perform a compound assignment of LVal <op>= RVal.
2635 const LValue &LVal, QualType LValType, QualType PromotedLValType,
2637 if (LVal.Designator.Invalid)
2645 CompleteObject Obj = findCompleteObject(Info, E, AK_Assign, LVal, LValType);
2648 return Obj && findSubobject(Info, E, Obj, LVal.Designator, Handler);
2769 LValue LVal;
2770 LVal.setFrom(Info.Ctx, Subobj);
2771 if (!HandleLValueArrayAdjustment(Info, E, LVal, PointeeType,
2774 LVal.moveInto(Subobj);
2783 /// Perform an increment or decrement on LVal.
2784 static bool handleIncDec(EvalInfo &Info, const Expr *E, const LValue &LVal,
2786 if (LVal.Designator.Invalid)
2795 CompleteObject Obj = findCompleteObject(Info, E, AK, LVal, LValType);
2797 return Obj && findSubobject(Info, E, Obj, LVal.Designator, Handler);
3972 LValue LVal;
3973 if (!EvaluateLValue(E->getSubExpr(), LVal, Info))
3978 LVal, RVal))
3997 LValue LVal;
3998 if (!EvaluateLValue(UO->getSubExpr(), LVal, Info))
4001 if (!handleIncDec(this->Info, UO, LVal, UO->getSubExpr()->getType(),
7955 LValue LVal;
7956 LVal.set(VD);
7965 if (!EvaluateInPlace(Value, InitInfo, LVal, &VIE,
7970 if (!EvaluateInPlace(Value, InitInfo, LVal, this,