summaryrefslogtreecommitdiffstats
path: root/clang/include/clang/Checker/PathSensitive/Store.h
diff options
context:
space:
mode:
Diffstat (limited to 'clang/include/clang/Checker/PathSensitive/Store.h')
-rw-r--r--clang/include/clang/Checker/PathSensitive/Store.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/clang/include/clang/Checker/PathSensitive/Store.h b/clang/include/clang/Checker/PathSensitive/Store.h
index 9a5ebf36d6a..2ab09a197e3 100644
--- a/clang/include/clang/Checker/PathSensitive/Store.h
+++ b/clang/include/clang/Checker/PathSensitive/Store.h
@@ -102,9 +102,13 @@ public:
return loc::MemRegionVal(MRMgr.getCompoundLiteralRegion(CL, LC));
}
- virtual SVal getLValueIvar(const ObjCIvarDecl* decl, SVal base) = 0;
+ virtual SVal getLValueIvar(const ObjCIvarDecl* decl, SVal base) {
+ return getLValueFieldOrIvar(decl, base);
+ }
- virtual SVal getLValueField(const FieldDecl* D, SVal Base) = 0;
+ virtual SVal getLValueField(const FieldDecl* D, SVal Base) {
+ return getLValueFieldOrIvar(D, Base);
+ }
virtual SVal getLValueElement(QualType elementType, SVal offset, SVal Base)=0;
@@ -195,6 +199,9 @@ protected:
/// as another region.
SVal CastRetrievedVal(SVal val, const TypedRegion *R, QualType castTy,
bool performTestOnly = true);
+
+private:
+ SVal getLValueFieldOrIvar(const Decl* D, SVal Base);
};
// FIXME: Do we still need this?
OpenPOWER on IntegriCloud