diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/clang/Analysis/PathSensitive/GRState.h | 5 | ||||
-rw-r--r-- | include/clang/Analysis/PathSensitive/Store.h | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/include/clang/Analysis/PathSensitive/GRState.h b/include/clang/Analysis/PathSensitive/GRState.h index b599301c17..d9b058ce84 100644 --- a/include/clang/Analysis/PathSensitive/GRState.h +++ b/include/clang/Analysis/PathSensitive/GRState.h @@ -355,6 +355,11 @@ public: SVal GetLValue(const GRState* St, const VarDecl* D) { return StoreMgr->getLValueVar(St, D); } + + // Get the lvalue for a StringLiteral. + SVal GetLValue(const GRState* St, const StringLiteral* E) { + return StoreMgr->getLValueString(St, E); + } // Get the lvalue for an ivar reference. SVal GetLValue(const GRState* St, const ObjCIvarDecl* D, SVal Base) { diff --git a/include/clang/Analysis/PathSensitive/Store.h b/include/clang/Analysis/PathSensitive/Store.h index aa3b5e791b..7610c54e1b 100644 --- a/include/clang/Analysis/PathSensitive/Store.h +++ b/include/clang/Analysis/PathSensitive/Store.h @@ -50,7 +50,9 @@ public: virtual Store getInitialStore() = 0; virtual MemRegionManager& getRegionManager() = 0; - virtual SVal getLValueVar(const GRState* St, const VarDecl* VD) = 0; + virtual SVal getLValueVar(const GRState* St, const VarDecl* VD) = 0; + + virtual SVal getLValueString(const GRState* St, const StringLiteral* S) = 0; virtual SVal getLValueIvar(const GRState* St, const ObjCIvarDecl* D, SVal Base) = 0; |