From: Jordan Rose Date: Wed, 6 Jun 2012 20:47:00 +0000 (+0000) Subject: [analyzer] Provide debug descriptions for all memory space regions. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=36397dc6c1bf1513a3bac4eabe9209e5b2295a55;p=clang [analyzer] Provide debug descriptions for all memory space regions. Patch by Guillem Marpons! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158106 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h b/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h index 0b21c46516..5034470781 100644 --- a/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h +++ b/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h @@ -237,8 +237,6 @@ protected: public: - void dumpToStream(raw_ostream &os) const; - static bool classof(const MemRegion *R) { Kind k = R->getKind(); return k >= BEG_NON_STATIC_GLOBAL_MEMSPACES && @@ -308,6 +306,9 @@ class HeapSpaceRegion : public MemSpaceRegion { HeapSpaceRegion(MemRegionManager *mgr) : MemSpaceRegion(mgr, HeapSpaceRegionKind) {} public: + + void dumpToStream(raw_ostream &os) const; + static bool classof(const MemRegion *R) { return R->getKind() == HeapSpaceRegionKind; } @@ -319,6 +320,9 @@ class UnknownSpaceRegion : public MemSpaceRegion { UnknownSpaceRegion(MemRegionManager *mgr) : MemSpaceRegion(mgr, UnknownSpaceRegionKind) {} public: + + void dumpToStream(raw_ostream &os) const; + static bool classof(const MemRegion *R) { return R->getKind() == UnknownSpaceRegionKind; } @@ -352,6 +356,9 @@ class StackLocalsSpaceRegion : public StackSpaceRegion { StackLocalsSpaceRegion(MemRegionManager *mgr, const StackFrameContext *sfc) : StackSpaceRegion(mgr, StackLocalsSpaceRegionKind, sfc) {} public: + + void dumpToStream(raw_ostream &os) const; + static bool classof(const MemRegion *R) { return R->getKind() == StackLocalsSpaceRegionKind; } @@ -364,6 +371,9 @@ private: StackArgumentsSpaceRegion(MemRegionManager *mgr, const StackFrameContext *sfc) : StackSpaceRegion(mgr, StackArgumentsSpaceRegionKind, sfc) {} public: + + void dumpToStream(raw_ostream &os) const; + static bool classof(const MemRegion *R) { return R->getKind() == StackArgumentsSpaceRegionKind; } diff --git a/lib/StaticAnalyzer/Core/MemRegion.cpp b/lib/StaticAnalyzer/Core/MemRegion.cpp index c0c7154927..96905c081e 100644 --- a/lib/StaticAnalyzer/Core/MemRegion.cpp +++ b/lib/StaticAnalyzer/Core/MemRegion.cpp @@ -518,10 +518,6 @@ void StaticGlobalSpaceRegion::dumpToStream(raw_ostream &os) const { os << "StaticGlobalsMemSpace{" << CR << '}'; } -void NonStaticGlobalSpaceRegion::dumpToStream(raw_ostream &os) const { - os << "NonStaticGlobalSpaceRegion"; -} - void GlobalInternalSpaceRegion::dumpToStream(raw_ostream &os) const { os << "GlobalInternalSpaceRegion"; } @@ -534,6 +530,22 @@ void GlobalImmutableSpaceRegion::dumpToStream(raw_ostream &os) const { os << "GlobalImmutableSpaceRegion"; } +void HeapSpaceRegion::dumpToStream(raw_ostream &os) const { + os << "HeapSpaceRegion"; +} + +void UnknownSpaceRegion::dumpToStream(raw_ostream &os) const { + os << "UnknownSpaceRegion"; +} + +void StackArgumentsSpaceRegion::dumpToStream(raw_ostream &os) const { + os << "StackArgumentsSpaceRegion"; +} + +void StackLocalsSpaceRegion::dumpToStream(raw_ostream &os) const { + os << "StackLocalsSpaceRegion"; +} + void MemRegion::dumpPretty(raw_ostream &os) const { return; }