From: Zhongxing Xu Date: Fri, 24 Oct 2008 06:01:33 +0000 (+0000) Subject: Add printing method to RegionStoreManager. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a071eb053aeeedc1c8128fd309b3a779b6c3152a;p=clang Add printing method to RegionStoreManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58074 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Analysis/RegionStore.cpp b/lib/Analysis/RegionStore.cpp index d0798db2c4..417521a14e 100644 --- a/lib/Analysis/RegionStore.cpp +++ b/lib/Analysis/RegionStore.cpp @@ -19,6 +19,7 @@ #include "clang/Analysis/Analyses/LiveVariables.h" #include "llvm/ADT/ImmutableMap.h" +#include "llvm/Support/raw_ostream.h" #include "llvm/Support/Compiler.h" using namespace clang; @@ -344,7 +345,14 @@ Store RegionStoreManager::AddDecl(Store store, return store; } -void RegionStoreManager::print(Store store, std::ostream& Out, const char* nl, - const char *sep) { - +void RegionStoreManager::print(Store store, std::ostream& Out, + const char* nl, const char *sep) { + llvm::raw_os_ostream OS(Out); + RegionBindingsTy B = GetRegionBindings(store); + OS << "Store:" << nl; + + for (RegionBindingsTy::iterator I = B.begin(), E = B.end(); I != E; ++I) { + OS << ' '; I.getKey()->print(OS); OS << " : "; + I.getData().print(OS); OS << nl; + } }