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

Declarations

tools/clang/lib/AST/ExprConstant.cpp
   70   struct LValue;

References

tools/clang/lib/AST/ExprConstant.cpp
  501     const LValue *This;
  550                    const FunctionDecl *Callee, const LValue *This,
  590                              bool IsLifetimeExtended, LValue &LV);
  609     ThisOverrideRAII(CallStackFrame &Frame, const LValue *NewThis, bool Enable)
  619     const LValue *OldThis;
  624                               const LValue &This, QualType ThisType);
  987     APValue *createHeapAlloc(const Expr *E, QualType T, LValue &LV);
 1376                                const FunctionDecl *Callee, const LValue *This,
 1725                             const LValue &This, const Expr *E,
 1727 static bool EvaluateLValue(const Expr *E, LValue &Result, EvalInfo &Info,
 1729 static bool EvaluatePointer(const Expr *E, LValue &Result, EvalInfo &Info,
 1733 static bool EvaluateTemporary(const Expr *E, LValue &Result, EvalInfo &Info);
 1739 static bool EvaluateAtomic(const Expr *E, const LValue *This, APValue &Result,
 1767                                          bool IsLifetimeExtended, LValue &LV) {
 1787 APValue *EvalInfo::createHeapAlloc(const Expr *E, QualType T, LValue &LV) {
 1916 static const ValueDecl *GetLValueBaseDecl(const LValue &LVal) {
 1920 static bool IsLiteralLValue(const LValue &Value) {
 1927 static bool IsWeakLValue(const LValue &Value) {
 1932 static bool isZeroSized(const LValue &Value) {
 1943 static bool HasSameBase(const LValue &A, const LValue &B) {
 1943 static bool HasSameBase(const LValue &A, const LValue &B) {
 2001                                           QualType Type, const LValue &LVal,
 2125                              const LValue *This = nullptr) {
 2221     LValue LVal;
 2624 static bool CastToDerivedClass(EvalInfo &Info, const Expr *E, LValue &Result,
 2653 static bool HandleLValueDirectBase(EvalInfo &Info, const Expr *E, LValue &Obj,
 2667 static bool HandleLValueBase(EvalInfo &Info, const Expr *E, LValue &Obj,
 2693                                  QualType Type, LValue &Result) {
 2706 static bool CastToBaseClass(EvalInfo &Info, const Expr *E, LValue &Result,
 2722 static bool HandleLValueMember(EvalInfo &Info, const Expr *E, LValue &LVal,
 2738                                        LValue &LVal,
 2779                                         LValue &LVal, QualType EltTy,
 2790                                         LValue &LVal, QualType EltTy,
 2802                                        LValue &LVal, QualType EltTy,
 2824                                 APValue *&Result, const LValue *LVal) {
 3508                                          AccessKinds AK, const LValue &LVal,
 3728                                const LValue &LVal, APValue &RVal,
 3783 static bool handleAssignment(EvalInfo &Info, const Expr *E, const LValue &LVal,
 3893     LValue LVal;
 3908     const LValue &LVal, QualType LValType, QualType PromotedLValType,
 4040     LValue LVal;
 4052 static bool handleIncDec(EvalInfo &Info, const Expr *E, const LValue &LVal,
 4070                                    LValue &This) {
 4097                                                   LValue &LV,
 4179                                                   LValue &LV,
 4198                                     LValue &Result) {
 4289   LValue Result;
 4345   const LValue *Slot;
 4959 static bool checkDynamicType(EvalInfo &Info, const Expr *E, const LValue &This,
 5002                                      const LValue &This,
 5027                                                 LValue &This, AccessKinds AK) {
 5081     EvalInfo &Info, const Expr *E, LValue &This, const CXXMethodDecl *Found,
 5153   LValue LVal;
 5187                               LValue &Ptr) {
 5319                                           const LValue &LHS) {
 5473                                const FunctionDecl *Callee, const LValue *This,
 5476                                const LValue *ResultSlot) {
 5498     LValue RHS;
 5535 static bool HandleConstructorCall(const Expr *E, const LValue &This,
 5583     LValue RHS;
 5626     LValue Subobject = This;
 5627     LValue SubobjectParent = This;
 5733 static bool HandleConstructorCall(const Expr *E, const LValue &This,
 5746                                   const LValue &This, APValue &Value,
 5769     LValue ElemLV = This;
 5876     LValue Subobject = This;
 5894     LValue Subobject = This;
 5915   const LValue &This;
 5938                               const LValue &This, QualType ThisType) {
 5953   LValue LV;
 5960                                   LValue &Result) {
 6042                                             const LValue &Pointer,
 6100   LValue Pointer;
 6585   LValue SourceLValue;
 6764       LValue Obj;
 6782     LValue CommonLV;
 6842                      const LValue *ResultSlot) {
 6847     LValue *This = nullptr, ThisVal;
 6884       LValue Call;
 6951           LValue Ptr;
 7074       LValue LVal;
 7107     LValue LVal;
 7183   LValue &Result;
 7193   bool evaluatePointer(const Expr *E, LValue &Result) {
 7198   LValueExprEvaluatorBase(EvalInfo &Info, LValue &Result, bool InvalidBaseOK)
 7317   LValueExprEvaluator(EvalInfo &Info, LValue &Result, bool InvalidBaseOK) :
 7376 static bool EvaluateLValue(const Expr *E, LValue &Result, EvalInfo &Info,
 7748                                             const LValue &LVal,
 7762                                       LValue &Result) {
 7796   LValue &Result;
 7804   bool evaluateLValue(const Expr *E, LValue &Result) {
 7808   bool evaluatePointer(const Expr *E, LValue &Result) {
 7815   PointerExprEvaluator(EvalInfo &info, LValue &Result, bool InvalidBaseOK)
 7899 static bool EvaluatePointer(const Expr* E, LValue& Result, EvalInfo &Info,
 8047     LValue LVal;
 8148     LValue OffsetResult(Result);
 8338     LValue Dest = Result;
 8340     LValue Src;
 8462 static bool EvaluateArrayNewInitList(EvalInfo &Info, LValue &This,
 8506     LValue Nothrow;
 8753     const LValue &This;
 8757     RecordExprEvaluator(EvalInfo &info, const LValue &This, APValue &Result)
 8794                                           const LValue &This, APValue &Result) {
 8808       LValue Subobject = This;
 8822     LValue Subobject = This;
 8847     LValue Subobject = This;
 8923     LValue Subobject = This;
 8946       LValue Subobject = This;
 8969     LValue Subobject = This;
 9069   LValue Array;
 9156 static bool EvaluateRecord(const Expr *E, const LValue &This,
 9174   TemporaryExprEvaluator(EvalInfo &Info, LValue &Result) :
 9212 static bool EvaluateTemporary(const Expr *E, LValue &Result, EvalInfo &Info) {
 9405     const LValue &This;
 9409     ArrayExprEvaluator(EvalInfo &Info, const LValue &This, APValue &Result)
 9429       LValue Subobject = This;
 9443                                const LValue &Subobject,
 9453 static bool EvaluateArray(const Expr *E, const LValue &This,
 9459 static bool EvaluateArrayNewInitList(EvalInfo &Info, LValue &This,
 9533   LValue Subobject = This;
 9559   LValue CommonLV;
 9573   LValue Subobject = This;
 9596                                                const LValue &Subobject,
 9616     LValue ArrayElt = Subobject;
10234 static bool isDesignatorAtObjectEnd(const ASTContext &Ctx, const LValue &LVal) {
10308 static bool refersToCompleteObject(const LValue &LVal) {
10326 static bool isUserWritingOffTheEnd(const ASTContext &Ctx, const LValue &LVal) {
10363                                unsigned Type, const LValue &LVal,
10447   LValue LVal;
10707     LValue String;
10771     LValue String1, String2;
10971     LValue ResultLValue;
11073                                             const LValue &LV) {
11490       LValue LV;
11557     LValue LHSValue, RHSValue;
11755     LValue LV;
11812     LValue LHSValue, RHSValue;
12182     LValue LV;
13107   const LValue *This;
13110   AtomicExprEvaluator(EvalInfo &Info, const LValue *This, APValue &Result)
13139 static bool EvaluateAtomic(const Expr *E, const LValue *This, APValue &Result,
13205   LValue Pointer;
13278     LValue LV;
13289     LValue LV;
13312     LValue LV;
13319     LValue LV;
13333       LValue LV;
13355 static bool EvaluateInPlace(APValue &Result, EvalInfo &Info, const LValue &This,
13406     LValue LV;
13562   LValue LV;
13634   LValue LVal;
13684   LValue LVal;
14335   LValue ThisVal;
14336   const LValue *ThisPtr = nullptr;
14400   LValue This;