<html><head></head><body bgcolor="#FFFFFF"><div>I have no desire to rename the header file as well. It should be kept as is. Thanks for unbreaking the CMake build.<br><br>Sent from my iPad</div><div><br>On Oct 23, 2011, at 7:00 PM, Chandler Carruth <<a href="mailto:chandlerc@google.com">chandlerc@google.com</a>> wrote:<br><br></div><div></div><blockquote type="cite"><div><div class="gmail_quote">On Sun, Oct 23, 2011 at 6:48 PM, Chandler Carruth <span dir="ltr"><<a href="mailto:chandlerc@google.com">chandlerc@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
FYI, this broke the CMake build because the CMakeLists.txt was updated to the new name (AnalysisDeclContext.cpp). I'm fixing it up by completing the file moves as well.<br></blockquote><div><br></div><div>I fixed the .cpp file, and I have a change that fixes the .h file as well, but I'll hold off submitting it in case you're already on that or have other changes overlapping with it. Don't want to cause unnecessary merge conflicts.</div>
<div><br></div><div>If you want me to submit the .h file rename, just let me know and I'll mash the submit button. =]</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br><div class="gmail_quote">On Sun, Oct 23, 2011 at 6:32 PM, Ted Kremenek <span dir="ltr"><<a href="mailto:kremenek@apple.com" target="_blank">kremenek@apple.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: kremenek<br>
Date: Sun Oct 23 20:32:45 2011<br>
New Revision: 142782<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=142782&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=142782&view=rev</a><br>
Log:<br>
Rename AnalysisContext to AnalysisDeclContext. Not only is this name more accurate, but it frees up the name AnalysisContext for other uses.<br>
<br>
Modified:<br>
cfe/trunk/include/clang/Analysis/Analyses/LiveVariables.h<br>
cfe/trunk/include/clang/Analysis/Analyses/PostOrderCFGView.h<br>
cfe/trunk/include/clang/Analysis/Analyses/ReachableCode.h<br>
cfe/trunk/include/clang/Analysis/Analyses/ThreadSafety.h<br>
cfe/trunk/include/clang/Analysis/Analyses/UninitializedValues.h<br>
cfe/trunk/include/clang/Analysis/AnalysisContext.h<br>
cfe/trunk/include/clang/Analysis/ProgramPoint.h<br>
cfe/trunk/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h<br>
cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h<br>
cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h<br>
cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h<br>
cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h<br>
cfe/trunk/lib/Analysis/AnalysisContext.cpp<br>
cfe/trunk/lib/Analysis/CMakeLists.txt<br>
cfe/trunk/lib/Analysis/LiveVariables.cpp<br>
cfe/trunk/lib/Analysis/PostOrderCFGView.cpp<br>
cfe/trunk/lib/Analysis/ReachableCode.cpp<br>
cfe/trunk/lib/Analysis/ThreadSafety.cpp<br>
cfe/trunk/lib/Analysis/UninitializedValues.cpp<br>
cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Checkers/CheckSizeofPointer.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Checkers/IdempotentOperationChecker.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Checkers/MallocOverflowSecurityChecker.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Core/AnalysisManager.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Core/CoreEngine.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Core/ExprEngine.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Core/MemRegion.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Core/PathDiagnostic.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Core/SValBuilder.cpp<br>
cfe/trunk/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp<br>
cfe/trunk/test/Analysis/inline3.c<br>
cfe/trunk/test/SemaCXX/missing-header.cpp<br>
<br>
Modified: cfe/trunk/include/clang/Analysis/Analyses/LiveVariables.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/Analyses/LiveVariables.h?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/Analyses/LiveVariables.h?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/include/clang/Analysis/Analyses/LiveVariables.h (original)<br>
+++ cfe/trunk/include/clang/Analysis/Analyses/LiveVariables.h Sun Oct 23 20:32:45 2011<br>
@@ -70,7 +70,7 @@<br>
virtual ~LiveVariables();<br>
<br>
/// Compute the liveness information for a given CFG.<br>
- static LiveVariables *computeLiveness(AnalysisContext &analysisContext,<br>
+ static LiveVariables *computeLiveness(AnalysisDeclContext &analysisContext,<br>
bool killAtAssign);<br>
<br>
/// Return true if a variable is live at the end of a<br>
@@ -93,7 +93,7 @@<br>
<br>
void runOnAllBlocks(Observer &obs);<br>
<br>
- static LiveVariables *create(AnalysisContext &analysisContext) {<br>
+ static LiveVariables *create(AnalysisDeclContext &analysisContext) {<br>
return computeLiveness(analysisContext, true);<br>
}<br>
<br>
@@ -106,7 +106,7 @@<br>
<br>
class RelaxedLiveVariables : public LiveVariables {<br>
public:<br>
- static LiveVariables *create(AnalysisContext &analysisContext) {<br>
+ static LiveVariables *create(AnalysisDeclContext &analysisContext) {<br>
return computeLiveness(analysisContext, false);<br>
}<br>
<br>
<br>
Modified: cfe/trunk/include/clang/Analysis/Analyses/PostOrderCFGView.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/Analyses/PostOrderCFGView.h?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/Analyses/PostOrderCFGView.h?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/include/clang/Analysis/Analyses/PostOrderCFGView.h (original)<br>
+++ cfe/trunk/include/clang/Analysis/Analyses/PostOrderCFGView.h Sun Oct 23 20:32:45 2011<br>
@@ -101,7 +101,7 @@<br>
// Used by AnalyisContext to construct this object.<br>
static const void *getTag();<br>
<br>
- static PostOrderCFGView *create(AnalysisContext &analysisContext);<br>
+ static PostOrderCFGView *create(AnalysisDeclContext &analysisContext);<br>
};<br>
<br>
} // end clang namespace<br>
<br>
Modified: cfe/trunk/include/clang/Analysis/Analyses/ReachableCode.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/Analyses/ReachableCode.h?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/Analyses/ReachableCode.h?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/include/clang/Analysis/Analyses/ReachableCode.h (original)<br>
+++ cfe/trunk/include/clang/Analysis/Analyses/ReachableCode.h Sun Oct 23 20:32:45 2011<br>
@@ -25,7 +25,7 @@<br>
}<br>
<br>
namespace clang {<br>
- class AnalysisContext;<br>
+ class AnalysisDeclContext;<br>
class CFGBlock;<br>
}<br>
<br>
@@ -48,7 +48,7 @@<br>
unsigned ScanReachableFromBlock(const CFGBlock *Start,<br>
llvm::BitVector &Reachable);<br>
<br>
-void FindUnreachableCode(AnalysisContext &AC, Callback &CB);<br>
+void FindUnreachableCode(AnalysisDeclContext &AC, Callback &CB);<br>
<br>
}} // end namespace clang::reachable_code<br>
<br>
<br>
Modified: cfe/trunk/include/clang/Analysis/Analyses/ThreadSafety.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/Analyses/ThreadSafety.h?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/Analyses/ThreadSafety.h?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/include/clang/Analysis/Analyses/ThreadSafety.h (original)<br>
+++ cfe/trunk/include/clang/Analysis/Analyses/ThreadSafety.h Sun Oct 23 20:32:45 2011<br>
@@ -143,7 +143,7 @@<br>
/// We traverse the blocks in the CFG, compute the set of mutexes that are held<br>
/// at the end of each block, and issue warnings for thread safety violations.<br>
/// Each block in the CFG is traversed exactly once.<br>
-void runThreadSafetyAnalysis(AnalysisContext &AC, ThreadSafetyHandler &Handler);<br>
+void runThreadSafetyAnalysis(AnalysisDeclContext &AC, ThreadSafetyHandler &Handler);<br>
<br>
/// \brief Helper function that returns a LockKind required for the given level<br>
/// of access.<br>
<br>
Modified: cfe/trunk/include/clang/Analysis/Analyses/UninitializedValues.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/Analyses/UninitializedValues.h?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/Analyses/UninitializedValues.h?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/include/clang/Analysis/Analyses/UninitializedValues.h (original)<br>
+++ cfe/trunk/include/clang/Analysis/Analyses/UninitializedValues.h Sun Oct 23 20:32:45 2011<br>
@@ -17,7 +17,7 @@<br>
<br>
namespace clang {<br>
<br>
-class AnalysisContext;<br>
+class AnalysisDeclContext;<br>
class CFG;<br>
class DeclContext;<br>
class Expr;<br>
@@ -45,7 +45,7 @@<br>
};<br>
<br>
void runUninitializedVariablesAnalysis(const DeclContext &dc, const CFG &cfg,<br>
- AnalysisContext &ac,<br>
+ AnalysisDeclContext &ac,<br>
UninitVariablesHandler &handler,<br>
UninitVariablesAnalysisStats &stats);<br>
<br>
<br>
Modified: cfe/trunk/include/clang/Analysis/AnalysisContext.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/AnalysisContext.h?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/AnalysisContext.h?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/include/clang/Analysis/AnalysisContext.h (original)<br>
+++ cfe/trunk/include/clang/Analysis/AnalysisContext.h Sun Oct 23 20:32:45 2011<br>
@@ -7,7 +7,7 @@<br>
//<br>
//===----------------------------------------------------------------------===//<br>
//<br>
-// This file defines AnalysisContext, a class that manages the analysis context<br>
+// This file defines AnalysisDeclContext, a class that manages the analysis context<br>
// data for path sensitive analysis.<br>
//<br>
//===----------------------------------------------------------------------===//<br>
@@ -38,13 +38,13 @@<br>
class ImplicitParamDecl;<br>
class LocationContextManager;<br>
class StackFrameContext;<br>
-class AnalysisContextManager;<br>
+class AnalysisDeclContextManager;<br>
class LocationContext;<br>
<br>
namespace idx { class TranslationUnit; }<br>
<br>
/// The base class of a hierarchy of objects representing analyses tied<br>
-/// to AnalysisContext.<br>
+/// to AnalysisDeclContext.<br>
class ManagedAnalysis {<br>
protected:<br>
ManagedAnalysis() {}<br>
@@ -58,18 +58,18 @@<br>
// Which returns a fixed pointer address to distinguish classes of<br>
// analysis objects. They also need to implement:<br>
//<br>
- // static [Derived*] create(AnalysisContext &Ctx);<br>
+ // static [Derived*] create(AnalysisDeclContext &Ctx);<br>
//<br>
- // which creates the analysis object given an AnalysisContext.<br>
+ // which creates the analysis object given an AnalysisDeclContext.<br>
};<br>
<br>
<br>
-/// AnalysisContext contains the context data for the function or method under<br>
+/// AnalysisDeclContext contains the context data for the function or method under<br>
/// analysis.<br>
-class AnalysisContext {<br>
- /// Backpoint to the AnalysisManager object that created this AnalysisContext.<br>
+class AnalysisDeclContext {<br>
+ /// Backpoint to the AnalysisManager object that created this AnalysisDeclContext.<br>
/// This may be null.<br>
- AnalysisContextManager *Manager;<br>
+ AnalysisDeclContextManager *Manager;<br>
<br>
const Decl *D;<br>
<br>
@@ -98,16 +98,16 @@<br>
void *ManagedAnalyses;<br>
<br>
public:<br>
- AnalysisContext(AnalysisContextManager *Mgr,<br>
+ AnalysisDeclContext(AnalysisDeclContextManager *Mgr,<br>
const Decl *D,<br>
idx::TranslationUnit *TU);<br>
<br>
- AnalysisContext(AnalysisContextManager *Mgr,<br>
+ AnalysisDeclContext(AnalysisDeclContextManager *Mgr,<br>
const Decl *D,<br>
idx::TranslationUnit *TU,<br>
const CFG::BuildOptions &BuildOptions);<br>
<br>
- ~AnalysisContext();<br>
+ ~AnalysisDeclContext();<br>
<br>
ASTContext &getASTContext() { return D->getASTContext(); }<br>
const Decl *getDecl() const { return D; }<br>
@@ -163,7 +163,7 @@<br>
getReferencedBlockVars(const BlockDecl *BD);<br>
<br>
/// Return the ImplicitParamDecl* associated with 'self' if this<br>
- /// AnalysisContext wraps an ObjCMethodDecl. Returns NULL otherwise.<br>
+ /// AnalysisDeclContext wraps an ObjCMethodDecl. Returns NULL otherwise.<br>
const ImplicitParamDecl *getSelfDecl() const;<br>
<br>
const StackFrameContext *getStackFrame(LocationContext const *Parent,<br>
@@ -195,13 +195,13 @@<br>
private:<br>
ContextKind Kind;<br>
<br>
- // AnalysisContext can't be const since some methods may modify its member.<br>
- AnalysisContext *Ctx;<br>
+ // AnalysisDeclContext can't be const since some methods may modify its member.<br>
+ AnalysisDeclContext *Ctx;<br>
<br>
const LocationContext *Parent;<br>
<br>
protected:<br>
- LocationContext(ContextKind k, AnalysisContext *ctx,<br>
+ LocationContext(ContextKind k, AnalysisDeclContext *ctx,<br>
const LocationContext *parent)<br>
: Kind(k), Ctx(ctx), Parent(parent) {}<br>
<br>
@@ -210,7 +210,7 @@<br>
<br>
ContextKind getKind() const { return Kind; }<br>
<br>
- AnalysisContext *getAnalysisContext() const { return Ctx; }<br>
+ AnalysisDeclContext *getAnalysisDeclContext() const { return Ctx; }<br>
<br>
idx::TranslationUnit *getTranslationUnit() const {<br>
return Ctx->getTranslationUnit();<br>
@@ -220,17 +220,17 @@<br>
<br>
bool isParentOf(const LocationContext *LC) const;<br>
<br>
- const Decl *getDecl() const { return getAnalysisContext()->getDecl(); }<br>
+ const Decl *getDecl() const { return getAnalysisDeclContext()->getDecl(); }<br>
<br>
- CFG *getCFG() const { return getAnalysisContext()->getCFG(); }<br>
+ CFG *getCFG() const { return getAnalysisDeclContext()->getCFG(); }<br>
<br>
template <typename T><br>
T *getAnalysis() const {<br>
- return getAnalysisContext()->getAnalysis<T>();<br>
+ return getAnalysisDeclContext()->getAnalysis<T>();<br>
}<br>
<br>
ParentMap &getParentMap() const {<br>
- return getAnalysisContext()->getParentMap();<br>
+ return getAnalysisDeclContext()->getParentMap();<br>
}<br>
<br>
const ImplicitParamDecl *getSelfDecl() const {<br>
@@ -248,7 +248,7 @@<br>
public:<br>
static void ProfileCommon(llvm::FoldingSetNodeID &ID,<br>
ContextKind ck,<br>
- AnalysisContext *ctx,<br>
+ AnalysisDeclContext *ctx,<br>
const LocationContext *parent,<br>
const void *data);<br>
};<br>
@@ -264,7 +264,7 @@<br>
unsigned Index;<br>
<br>
friend class LocationContextManager;<br>
- StackFrameContext(AnalysisContext *ctx, const LocationContext *parent,<br>
+ StackFrameContext(AnalysisDeclContext *ctx, const LocationContext *parent,<br>
const Stmt *s, const CFGBlock *blk,<br>
unsigned idx)<br>
: LocationContext(StackFrame, ctx, parent), CallSite(s),<br>
@@ -281,7 +281,7 @@<br>
<br>
void Profile(llvm::FoldingSetNodeID &ID);<br>
<br>
- static void Profile(llvm::FoldingSetNodeID &ID, AnalysisContext *ctx,<br>
+ static void Profile(llvm::FoldingSetNodeID &ID, AnalysisDeclContext *ctx,<br>
const LocationContext *parent, const Stmt *s,<br>
const CFGBlock *blk, unsigned idx) {<br>
ProfileCommon(ID, StackFrame, ctx, parent, s);<br>
@@ -298,7 +298,7 @@<br>
const Stmt *Enter;<br>
<br>
friend class LocationContextManager;<br>
- ScopeContext(AnalysisContext *ctx, const LocationContext *parent,<br>
+ ScopeContext(AnalysisDeclContext *ctx, const LocationContext *parent,<br>
const Stmt *s)<br>
: LocationContext(Scope, ctx, parent), Enter(s) {}<br>
<br>
@@ -307,7 +307,7 @@<br>
<br>
void Profile(llvm::FoldingSetNodeID &ID);<br>
<br>
- static void Profile(llvm::FoldingSetNodeID &ID, AnalysisContext *ctx,<br>
+ static void Profile(llvm::FoldingSetNodeID &ID, AnalysisDeclContext *ctx,<br>
const LocationContext *parent, const Stmt *s) {<br>
ProfileCommon(ID, Scope, ctx, parent, s);<br>
}<br>
@@ -324,7 +324,7 @@<br>
<br>
friend class LocationContextManager;<br>
<br>
- BlockInvocationContext(AnalysisContext *ctx, const LocationContext *parent,<br>
+ BlockInvocationContext(AnalysisDeclContext *ctx, const LocationContext *parent,<br>
const BlockDecl *bd)<br>
: LocationContext(Block, ctx, parent), BD(bd) {}<br>
<br>
@@ -335,7 +335,7 @@<br>
<br>
void Profile(llvm::FoldingSetNodeID &ID);<br>
<br>
- static void Profile(llvm::FoldingSetNodeID &ID, AnalysisContext *ctx,<br>
+ static void Profile(llvm::FoldingSetNodeID &ID, AnalysisDeclContext *ctx,<br>
const LocationContext *parent, const BlockDecl *bd) {<br>
ProfileCommon(ID, Block, ctx, parent, bd);<br>
}<br>
@@ -350,12 +350,12 @@<br>
public:<br>
~LocationContextManager();<br>
<br>
- const StackFrameContext *getStackFrame(AnalysisContext *ctx,<br>
+ const StackFrameContext *getStackFrame(AnalysisDeclContext *ctx,<br>
const LocationContext *parent,<br>
const Stmt *s,<br>
const CFGBlock *blk, unsigned idx);<br>
<br>
- const ScopeContext *getScope(AnalysisContext *ctx,<br>
+ const ScopeContext *getScope(AnalysisDeclContext *ctx,<br>
const LocationContext *parent,<br>
const Stmt *s);<br>
<br>
@@ -363,26 +363,26 @@<br>
void clear();<br>
private:<br>
template <typename LOC, typename DATA><br>
- const LOC *getLocationContext(AnalysisContext *ctx,<br>
+ const LOC *getLocationContext(AnalysisDeclContext *ctx,<br>
const LocationContext *parent,<br>
const DATA *d);<br>
};<br>
<br>
-class AnalysisContextManager {<br>
- typedef llvm::DenseMap<const Decl*, AnalysisContext*> ContextMap;<br>
+class AnalysisDeclContextManager {<br>
+ typedef llvm::DenseMap<const Decl*, AnalysisDeclContext*> ContextMap;<br>
<br>
ContextMap Contexts;<br>
LocationContextManager LocContexts;<br>
CFG::BuildOptions cfgBuildOptions;<br>
<br>
public:<br>
- AnalysisContextManager(bool useUnoptimizedCFG = false,<br>
+ AnalysisDeclContextManager(bool useUnoptimizedCFG = false,<br>
bool addImplicitDtors = false,<br>
bool addInitializers = false);<br>
<br>
- ~AnalysisContextManager();<br>
+ ~AnalysisDeclContextManager();<br>
<br>
- AnalysisContext *getContext(const Decl *D, idx::TranslationUnit *TU = 0);<br>
+ AnalysisDeclContext *getContext(const Decl *D, idx::TranslationUnit *TU = 0);<br>
<br>
bool getUseUnoptimizedCFG() const {<br>
return !cfgBuildOptions.PruneTriviallyFalseEdges;<br>
@@ -392,7 +392,7 @@<br>
return cfgBuildOptions;<br>
}<br>
<br>
- const StackFrameContext *getStackFrame(AnalysisContext *Ctx,<br>
+ const StackFrameContext *getStackFrame(AnalysisDeclContext *Ctx,<br>
LocationContext const *Parent,<br>
const Stmt *S,<br>
const CFGBlock *Blk,<br>
@@ -416,11 +416,11 @@<br>
}<br>
<br>
<br>
- /// Discard all previously created AnalysisContexts.<br>
+ /// Discard all previously created AnalysisDeclContexts.<br>
void clear();<br>
<br>
private:<br>
- friend class AnalysisContext;<br>
+ friend class AnalysisDeclContext;<br>
<br>
LocationContextManager &getLocationContextManager() {<br>
return LocContexts;<br>
<br>
Modified: cfe/trunk/include/clang/Analysis/ProgramPoint.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/ProgramPoint.h?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/ProgramPoint.h?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/include/clang/Analysis/ProgramPoint.h (original)<br>
+++ cfe/trunk/include/clang/Analysis/ProgramPoint.h Sun Oct 23 20:32:45 2011<br>
@@ -28,7 +28,7 @@<br>
<br>
namespace clang {<br>
<br>
-class AnalysisContext;<br>
+class AnalysisDeclContext;<br>
class FunctionDecl;<br>
class LocationContext;<br>
class ProgramPointTag;<br>
<br>
Modified: cfe/trunk/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h (original)<br>
+++ cfe/trunk/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h Sun Oct 23 20:32:45 2011<br>
@@ -24,7 +24,7 @@<br>
<br>
namespace clang {<br>
<br>
-class AnalysisContext;<br>
+class AnalysisDeclContext;<br>
class BinaryOperator;<br>
class CompoundStmt;<br>
class Decl;<br>
@@ -89,8 +89,8 @@<br>
PathDiagnosticRange() : isPoint(false) {}<br>
};<br>
<br>
-typedef llvm::PointerUnion<const LocationContext*, AnalysisContext*><br>
- LocationOrAnalysisContext;<br>
+typedef llvm::PointerUnion<const LocationContext*, AnalysisDeclContext*><br>
+ LocationOrAnalysisDeclContext;<br>
<br>
class PathDiagnosticLocation {<br>
private:<br>
@@ -111,10 +111,10 @@<br>
<br>
FullSourceLoc<br>
genLocation(SourceLocation L = SourceLocation(),<br>
- LocationOrAnalysisContext LAC = (AnalysisContext*)0) const;<br>
+ LocationOrAnalysisDeclContext LAC = (AnalysisDeclContext*)0) const;<br>
<br>
PathDiagnosticRange<br>
- genRange(LocationOrAnalysisContext LAC = (AnalysisContext*)0) const;<br>
+ genRange(LocationOrAnalysisDeclContext LAC = (AnalysisDeclContext*)0) const;<br>
<br>
public:<br>
/// Create an invalid location.<br>
@@ -124,7 +124,7 @@<br>
/// Create a location corresponding to the given statement.<br>
PathDiagnosticLocation(const Stmt *s,<br>
const SourceManager &sm,<br>
- LocationOrAnalysisContext lac)<br>
+ LocationOrAnalysisDeclContext lac)<br>
: K(StmtK), S(s), D(0), SM(&sm),<br>
Loc(genLocation(SourceLocation(), lac)),<br>
Range(genRange(lac)) {<br>
@@ -153,7 +153,7 @@<br>
/// Create a location for the beginning of the statement.<br>
static PathDiagnosticLocation createBegin(const Stmt *S,<br>
const SourceManager &SM,<br>
- const LocationOrAnalysisContext LAC);<br>
+ const LocationOrAnalysisDeclContext LAC);<br>
<br>
/// Create the location for the operator of the binary expression.<br>
/// Assumes the statement has a valid location.<br>
<br>
Modified: cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h (original)<br>
+++ cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h Sun Oct 23 20:32:45 2011<br>
@@ -31,7 +31,7 @@<br>
class CheckerManager;<br>
<br>
class AnalysisManager : public BugReporterData {<br>
- AnalysisContextManager AnaCtxMgr;<br>
+ AnalysisDeclContextManager AnaCtxMgr;<br>
<br>
ASTContext &Ctx;<br>
DiagnosticsEngine &Diags;<br>
@@ -99,7 +99,7 @@<br>
AnaCtxMgr.clear();<br>
}<br>
<br>
- AnalysisContextManager& getAnalysisContextManager() {<br>
+ AnalysisDeclContextManager& getAnalysisDeclContextManager() {<br>
return AnaCtxMgr;<br>
}<br>
<br>
@@ -164,7 +164,7 @@<br>
<br>
bool hasIndexer() const { return Idxer != 0; }<br>
<br>
- AnalysisContext *getAnalysisContextInAnotherTU(const Decl *D);<br>
+ AnalysisDeclContext *getAnalysisDeclContextInAnotherTU(const Decl *D);<br>
<br>
CFG *getCFG(Decl const *D) {<br>
return AnaCtxMgr.getContext(D)->getCFG();<br>
@@ -179,11 +179,11 @@<br>
return AnaCtxMgr.getContext(D)->getParentMap();<br>
}<br>
<br>
- AnalysisContext *getAnalysisContext(const Decl *D) {<br>
+ AnalysisDeclContext *getAnalysisDeclContext(const Decl *D) {<br>
return AnaCtxMgr.getContext(D);<br>
}<br>
<br>
- AnalysisContext *getAnalysisContext(const Decl *D, idx::TranslationUnit *TU) {<br>
+ AnalysisDeclContext *getAnalysisDeclContext(const Decl *D, idx::TranslationUnit *TU) {<br>
return AnaCtxMgr.getContext(D, TU);<br>
}<br>
<br>
<br>
Modified: cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h (original)<br>
+++ cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h Sun Oct 23 20:32:45 2011<br>
@@ -147,8 +147,8 @@<br>
Eng.getBugReporter().EmitReport(R);<br>
}<br>
<br>
- AnalysisContext *getCurrentAnalysisContext() const {<br>
- return Pred->getLocationContext()->getAnalysisContext();<br>
+ AnalysisDeclContext *getCurrentAnalysisDeclContext() const {<br>
+ return Pred->getLocationContext()->getAnalysisDeclContext();<br>
}<br>
<br>
private:<br>
<br>
Modified: cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h (original)<br>
+++ cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h Sun Oct 23 20:32:45 2011<br>
@@ -28,7 +28,7 @@<br>
<br>
namespace clang {<br>
<br>
-class AnalysisContextManager;<br>
+class AnalysisDeclContextManager;<br>
class ObjCForCollectionStmt;<br>
<br>
namespace ento {<br>
@@ -40,7 +40,7 @@<br>
class ExprEngine : public SubEngine {<br>
AnalysisManager &AMgr;<br>
<br>
- AnalysisContextManager &AnalysisContexts;<br>
+ AnalysisDeclContextManager &AnalysisDeclContexts;<br>
<br>
CoreEngine Engine;<br>
<br>
<br>
Modified: cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h (original)<br>
+++ cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h Sun Oct 23 20:32:45 2011<br>
@@ -448,11 +448,11 @@<br>
friend class MemRegionManager;<br>
<br>
const BlockDecl *BD;<br>
- AnalysisContext *AC;<br>
+ AnalysisDeclContext *AC;<br>
CanQualType locTy;<br>
<br>
BlockTextRegion(const BlockDecl *bd, CanQualType lTy,<br>
- AnalysisContext *ac, const MemRegion* sreg)<br>
+ AnalysisDeclContext *ac, const MemRegion* sreg)<br>
: CodeTextRegion(sreg, BlockTextRegionKind), BD(bd), AC(ac), locTy(lTy) {}<br>
<br>
public:<br>
@@ -464,14 +464,14 @@<br>
return BD;<br>
}<br>
<br>
- AnalysisContext *getAnalysisContext() const { return AC; }<br>
+ AnalysisDeclContext *getAnalysisDeclContext() const { return AC; }<br>
<br>
virtual void dumpToStream(raw_ostream &os) const;<br>
<br>
void Profile(llvm::FoldingSetNodeID& ID) const;<br>
<br>
static void ProfileRegion(llvm::FoldingSetNodeID& ID, const BlockDecl *BD,<br>
- CanQualType, const AnalysisContext*,<br>
+ CanQualType, const AnalysisDeclContext*,<br>
const MemRegion*);<br>
<br>
static bool classof(const MemRegion* R) {<br>
@@ -1038,7 +1038,7 @@<br>
const FunctionTextRegion *getFunctionTextRegion(const FunctionDecl *FD);<br>
const BlockTextRegion *getBlockTextRegion(const BlockDecl *BD,<br>
CanQualType locTy,<br>
- AnalysisContext *AC);<br>
+ AnalysisDeclContext *AC);<br>
<br>
/// getBlockDataRegion - Get the memory region associated with an instance<br>
/// of a block. Unlike many other MemRegions, the LocationContext*<br>
<br>
Modified: cfe/trunk/lib/Analysis/AnalysisContext.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/AnalysisContext.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/AnalysisContext.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/Analysis/AnalysisContext.cpp (original)<br>
+++ cfe/trunk/lib/Analysis/AnalysisContext.cpp Sun Oct 23 20:32:45 2011<br>
@@ -1,4 +1,4 @@<br>
-//== AnalysisContext.cpp - Analysis context for Path Sens analysis -*- C++ -*-//<br>
+//== AnalysisDeclContext.cpp - Analysis context for Path Sens analysis -*- C++ -*-//<br>
//<br>
// The LLVM Compiler Infrastructure<br>
//<br>
@@ -7,7 +7,7 @@<br>
//<br>
//===----------------------------------------------------------------------===//<br>
//<br>
-// This file defines AnalysisContext, a class that manages the analysis context<br>
+// This file defines AnalysisDeclContext, a class that manages the analysis context<br>
// data for path sensitive analysis.<br>
//<br>
//===----------------------------------------------------------------------===//<br>
@@ -32,7 +32,7 @@<br>
<br>
typedef llvm::DenseMap<const void *, ManagedAnalysis *> ManagedAnalysisMap;<br>
<br>
-AnalysisContext::AnalysisContext(AnalysisContextManager *Mgr,<br>
+AnalysisDeclContext::AnalysisDeclContext(AnalysisDeclContextManager *Mgr,<br>
const Decl *d,<br>
idx::TranslationUnit *tu,<br>
const CFG::BuildOptions &buildOptions)<br>
@@ -49,7 +49,7 @@<br>
cfgBuildOptions.forcedBlkExprs = &forcedBlkExprs;<br>
}<br>
<br>
-AnalysisContext::AnalysisContext(AnalysisContextManager *Mgr,<br>
+AnalysisDeclContext::AnalysisDeclContext(AnalysisDeclContextManager *Mgr,<br>
const Decl *d,<br>
idx::TranslationUnit *tu)<br>
: Manager(Mgr),<br>
@@ -64,7 +64,7 @@<br>
cfgBuildOptions.forcedBlkExprs = &forcedBlkExprs;<br>
}<br>
<br>
-AnalysisContextManager::AnalysisContextManager(bool useUnoptimizedCFG,<br>
+AnalysisDeclContextManager::AnalysisDeclContextManager(bool useUnoptimizedCFG,<br>
bool addImplicitDtors,<br>
bool addInitializers) {<br>
cfgBuildOptions.PruneTriviallyFalseEdges = !useUnoptimizedCFG;<br>
@@ -72,13 +72,13 @@<br>
cfgBuildOptions.AddInitializers = addInitializers;<br>
}<br>
<br>
-void AnalysisContextManager::clear() {<br>
+void AnalysisDeclContextManager::clear() {<br>
for (ContextMap::iterator I = Contexts.begin(), E = Contexts.end(); I!=E; ++I)<br>
delete I->second;<br>
Contexts.clear();<br>
}<br>
<br>
-Stmt *AnalysisContext::getBody() const {<br>
+Stmt *AnalysisDeclContext::getBody() const {<br>
if (const FunctionDecl *FD = dyn_cast<FunctionDecl>(D))<br>
return FD->getBody();<br>
else if (const ObjCMethodDecl *MD = dyn_cast<ObjCMethodDecl>(D))<br>
@@ -92,14 +92,14 @@<br>
llvm_unreachable("unknown code decl");<br>
}<br>
<br>
-const ImplicitParamDecl *AnalysisContext::getSelfDecl() const {<br>
+const ImplicitParamDecl *AnalysisDeclContext::getSelfDecl() const {<br>
if (const ObjCMethodDecl *MD = dyn_cast<ObjCMethodDecl>(D))<br>
return MD->getSelfDecl();<br>
<br>
return NULL;<br>
}<br>
<br>
-void AnalysisContext::registerForcedBlockExpression(const Stmt *stmt) {<br>
+void AnalysisDeclContext::registerForcedBlockExpression(const Stmt *stmt) {<br>
if (!forcedBlkExprs)<br>
forcedBlkExprs = new CFG::BuildOptions::ForcedBlkExprs();<br>
// Default construct an entry for 'stmt'.<br>
@@ -109,7 +109,7 @@<br>
}<br>
<br>
const CFGBlock *<br>
-AnalysisContext::getBlockForRegisteredExpression(const Stmt *stmt) {<br>
+AnalysisDeclContext::getBlockForRegisteredExpression(const Stmt *stmt) {<br>
assert(forcedBlkExprs);<br>
if (const Expr *e = dyn_cast<Expr>(stmt))<br>
stmt = e->IgnoreParens();<br>
@@ -119,7 +119,7 @@<br>
return itr->second;<br>
}<br>
<br>
-CFG *AnalysisContext::getCFG() {<br>
+CFG *AnalysisDeclContext::getCFG() {<br>
if (!cfgBuildOptions.PruneTriviallyFalseEdges)<br>
return getUnoptimizedCFG();<br>
<br>
@@ -133,7 +133,7 @@<br>
return cfg.get();<br>
}<br>
<br>
-CFG *AnalysisContext::getUnoptimizedCFG() {<br>
+CFG *AnalysisDeclContext::getUnoptimizedCFG() {<br>
if (!builtCompleteCFG) {<br>
SaveAndRestore<bool> NotPrune(cfgBuildOptions.PruneTriviallyFalseEdges,<br>
false);<br>
@@ -146,7 +146,7 @@<br>
return completeCFG.get();<br>
}<br>
<br>
-CFGStmtMap *AnalysisContext::getCFGStmtMap() {<br>
+CFGStmtMap *AnalysisDeclContext::getCFGStmtMap() {<br>
if (cfgStmtMap)<br>
return cfgStmtMap.get();<br>
<br>
@@ -158,7 +158,7 @@<br>
return 0;<br>
}<br>
<br>
-CFGReverseBlockReachabilityAnalysis *AnalysisContext::getCFGReachablityAnalysis() {<br>
+CFGReverseBlockReachabilityAnalysis *AnalysisDeclContext::getCFGReachablityAnalysis() {<br>
if (CFA)<br>
return CFA.get();<br>
<br>
@@ -170,39 +170,39 @@<br>
return 0;<br>
}<br>
<br>
-void AnalysisContext::dumpCFG() {<br>
+void AnalysisDeclContext::dumpCFG() {<br>
getCFG()->dump(getASTContext().getLangOptions());<br>
}<br>
<br>
-ParentMap &AnalysisContext::getParentMap() {<br>
+ParentMap &AnalysisDeclContext::getParentMap() {<br>
if (!PM)<br>
PM.reset(new ParentMap(getBody()));<br>
return *PM;<br>
}<br>
<br>
-PseudoConstantAnalysis *AnalysisContext::getPseudoConstantAnalysis() {<br>
+PseudoConstantAnalysis *AnalysisDeclContext::getPseudoConstantAnalysis() {<br>
if (!PCA)<br>
PCA.reset(new PseudoConstantAnalysis(getBody()));<br>
return PCA.get();<br>
}<br>
<br>
-AnalysisContext *AnalysisContextManager::getContext(const Decl *D,<br>
+AnalysisDeclContext *AnalysisDeclContextManager::getContext(const Decl *D,<br>
idx::TranslationUnit *TU) {<br>
- AnalysisContext *&AC = Contexts[D];<br>
+ AnalysisDeclContext *&AC = Contexts[D];<br>
if (!AC)<br>
- AC = new AnalysisContext(this, D, TU, cfgBuildOptions);<br>
+ AC = new AnalysisDeclContext(this, D, TU, cfgBuildOptions);<br>
return AC;<br>
}<br>
<br>
const StackFrameContext *<br>
-AnalysisContext::getStackFrame(LocationContext const *Parent, const Stmt *S,<br>
+AnalysisDeclContext::getStackFrame(LocationContext const *Parent, const Stmt *S,<br>
const CFGBlock *Blk, unsigned Idx) {<br>
return getLocationContextManager().getStackFrame(this, Parent, S, Blk, Idx);<br>
}<br>
<br>
-LocationContextManager & AnalysisContext::getLocationContextManager() {<br>
+LocationContextManager & AnalysisDeclContext::getLocationContextManager() {<br>
assert(Manager &&<br>
- "Cannot create LocationContexts without an AnalysisContextManager!");<br>
+ "Cannot create LocationContexts without an AnalysisDeclContextManager!");<br>
return Manager->getLocationContextManager();<br>
}<br>
<br>
@@ -212,7 +212,7 @@<br>
<br>
void LocationContext::ProfileCommon(llvm::FoldingSetNodeID &ID,<br>
ContextKind ck,<br>
- AnalysisContext *ctx,<br>
+ AnalysisDeclContext *ctx,<br>
const LocationContext *parent,<br>
const void *data) {<br>
ID.AddInteger(ck);<br>
@@ -222,15 +222,15 @@<br>
}<br>
<br>
void StackFrameContext::Profile(llvm::FoldingSetNodeID &ID) {<br>
- Profile(ID, getAnalysisContext(), getParent(), CallSite, Block, Index);<br>
+ Profile(ID, getAnalysisDeclContext(), getParent(), CallSite, Block, Index);<br>
}<br>
<br>
void ScopeContext::Profile(llvm::FoldingSetNodeID &ID) {<br>
- Profile(ID, getAnalysisContext(), getParent(), Enter);<br>
+ Profile(ID, getAnalysisDeclContext(), getParent(), Enter);<br>
}<br>
<br>
void BlockInvocationContext::Profile(llvm::FoldingSetNodeID &ID) {<br>
- Profile(ID, getAnalysisContext(), getParent(), BD);<br>
+ Profile(ID, getAnalysisDeclContext(), getParent(), BD);<br>
}<br>
<br>
//===----------------------------------------------------------------------===//<br>
@@ -239,7 +239,7 @@<br>
<br>
template <typename LOC, typename DATA><br>
const LOC*<br>
-LocationContextManager::getLocationContext(AnalysisContext *ctx,<br>
+LocationContextManager::getLocationContext(AnalysisDeclContext *ctx,<br>
const LocationContext *parent,<br>
const DATA *d) {<br>
llvm::FoldingSetNodeID ID;<br>
@@ -256,7 +256,7 @@<br>
}<br>
<br>
const StackFrameContext*<br>
-LocationContextManager::getStackFrame(AnalysisContext *ctx,<br>
+LocationContextManager::getStackFrame(AnalysisDeclContext *ctx,<br>
const LocationContext *parent,<br>
const Stmt *s,<br>
const CFGBlock *blk, unsigned idx) {<br>
@@ -273,7 +273,7 @@<br>
}<br>
<br>
const ScopeContext *<br>
-LocationContextManager::getScope(AnalysisContext *ctx,<br>
+LocationContextManager::getScope(AnalysisDeclContext *ctx,<br>
const LocationContext *parent,<br>
const Stmt *s) {<br>
return getLocationContext<ScopeContext, Stmt>(ctx, parent, s);<br>
@@ -395,9 +395,9 @@<br>
return BV;<br>
}<br>
<br>
-std::pair<AnalysisContext::referenced_decls_iterator,<br>
- AnalysisContext::referenced_decls_iterator><br>
-AnalysisContext::getReferencedBlockVars(const BlockDecl *BD) {<br>
+std::pair<AnalysisDeclContext::referenced_decls_iterator,<br>
+ AnalysisDeclContext::referenced_decls_iterator><br>
+AnalysisDeclContext::getReferencedBlockVars(const BlockDecl *BD) {<br>
if (!ReferencedBlockVars)<br>
ReferencedBlockVars = new llvm::DenseMap<const BlockDecl*,void*>();<br>
<br>
@@ -405,7 +405,7 @@<br>
return std::make_pair(V->begin(), V->end());<br>
}<br>
<br>
-ManagedAnalysis *&AnalysisContext::getAnalysisImpl(const void *tag) {<br>
+ManagedAnalysis *&AnalysisDeclContext::getAnalysisImpl(const void *tag) {<br>
if (!ManagedAnalyses)<br>
ManagedAnalyses = new ManagedAnalysisMap();<br>
ManagedAnalysisMap *M = (ManagedAnalysisMap*) ManagedAnalyses;<br>
@@ -418,7 +418,7 @@<br>
<br>
ManagedAnalysis::~ManagedAnalysis() {}<br>
<br>
-AnalysisContext::~AnalysisContext() {<br>
+AnalysisDeclContext::~AnalysisDeclContext() {<br>
delete forcedBlkExprs;<br>
delete ReferencedBlockVars;<br>
// Release the managed analyses.<br>
@@ -430,7 +430,7 @@<br>
}<br>
}<br>
<br>
-AnalysisContextManager::~AnalysisContextManager() {<br>
+AnalysisDeclContextManager::~AnalysisDeclContextManager() {<br>
for (ContextMap::iterator I = Contexts.begin(), E = Contexts.end(); I!=E; ++I)<br>
delete I->second;<br>
}<br>
<br>
Modified: cfe/trunk/lib/Analysis/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/CMakeLists.txt?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/CMakeLists.txt?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/Analysis/CMakeLists.txt (original)<br>
+++ cfe/trunk/lib/Analysis/CMakeLists.txt Sun Oct 23 20:32:45 2011<br>
@@ -1,7 +1,7 @@<br>
set(LLVM_USED_LIBS clangBasic clangAST clangIndex)<br>
<br>
add_clang_library(clangAnalysis<br>
- AnalysisContext.cpp<br>
+ AnalysisDeclContext.cpp<br>
CFG.cpp<br>
CFGReachabilityAnalysis.cpp<br>
CFGStmtMap.cpp<br>
<br>
Modified: cfe/trunk/lib/Analysis/LiveVariables.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/LiveVariables.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/LiveVariables.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/Analysis/LiveVariables.cpp (original)<br>
+++ cfe/trunk/lib/Analysis/LiveVariables.cpp Sun Oct 23 20:32:45 2011<br>
@@ -22,7 +22,7 @@<br>
llvm::BitVector enqueuedBlocks;<br>
PostOrderCFGView *POV;<br>
public:<br>
- DataflowWorklist(const CFG &cfg, AnalysisContext &Ctx)<br>
+ DataflowWorklist(const CFG &cfg, AnalysisDeclContext &Ctx)<br>
: enqueuedBlocks(cfg.getNumBlockIDs()),<br>
POV(Ctx.getAnalysis<PostOrderCFGView>()) {}<br>
<br>
@@ -86,7 +86,7 @@<br>
namespace {<br>
class LiveVariablesImpl {<br>
public:<br>
- AnalysisContext &analysisContext;<br>
+ AnalysisDeclContext &analysisContext;<br>
std::vector<LiveVariables::LivenessValues> cfgBlockValues;<br>
llvm::ImmutableSet<const Stmt *>::Factory SSetFact;<br>
llvm::ImmutableSet<const VarDecl *>::Factory DSetFact;<br>
@@ -106,7 +106,7 @@<br>
<br>
void dumpBlockLiveness(const SourceManager& M);<br>
<br>
- LiveVariablesImpl(AnalysisContext &ac, bool KillAtAssign)<br>
+ LiveVariablesImpl(AnalysisDeclContext &ac, bool KillAtAssign)<br>
: analysisContext(ac),<br>
SSetFact(false), // Do not canonicalize ImmutableSets by default.<br>
DSetFact(false), // This is a *major* performance win.<br>
@@ -323,7 +323,7 @@<br>
}<br>
<br>
void TransferFunctions::VisitBlockExpr(BlockExpr *BE) {<br>
- AnalysisContext::referenced_decls_iterator I, E;<br>
+ AnalysisDeclContext::referenced_decls_iterator I, E;<br>
llvm::tie(I, E) =<br>
LV.analysisContext.getReferencedBlockVars(BE->getBlockDecl());<br>
for ( ; I != E ; ++I) {<br>
@@ -447,7 +447,7 @@<br>
}<br>
<br>
LiveVariables *<br>
-LiveVariables::computeLiveness(AnalysisContext &AC,<br>
+LiveVariables::computeLiveness(AnalysisDeclContext &AC,<br>
bool killAtAssign) {<br>
<br>
// No CFG? Bail out.<br>
<br>
Modified: cfe/trunk/lib/Analysis/PostOrderCFGView.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/PostOrderCFGView.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/PostOrderCFGView.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/Analysis/PostOrderCFGView.cpp (original)<br>
+++ cfe/trunk/lib/Analysis/PostOrderCFGView.cpp Sun Oct 23 20:32:45 2011<br>
@@ -26,7 +26,7 @@<br>
}<br>
}<br>
<br>
-PostOrderCFGView *PostOrderCFGView::create(AnalysisContext &ctx) {<br>
+PostOrderCFGView *PostOrderCFGView::create(AnalysisDeclContext &ctx) {<br>
const CFG *cfg = ctx.getCFG();<br>
if (!cfg)<br>
return 0;<br>
<br>
Modified: cfe/trunk/lib/Analysis/ReachableCode.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/ReachableCode.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/ReachableCode.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/Analysis/ReachableCode.cpp (original)<br>
+++ cfe/trunk/lib/Analysis/ReachableCode.cpp Sun Oct 23 20:32:45 2011<br>
@@ -287,7 +287,7 @@<br>
return count;<br>
}<br>
<br>
-void FindUnreachableCode(AnalysisContext &AC, Callback &CB) {<br>
+void FindUnreachableCode(AnalysisDeclContext &AC, Callback &CB) {<br>
CFG *cfg = AC.getCFG();<br>
if (!cfg)<br>
return;<br>
<br>
Modified: cfe/trunk/lib/Analysis/ThreadSafety.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/ThreadSafety.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/ThreadSafety.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/Analysis/ThreadSafety.cpp (original)<br>
+++ cfe/trunk/lib/Analysis/ThreadSafety.cpp Sun Oct 23 20:32:45 2011<br>
@@ -648,7 +648,7 @@<br>
Lockset addLock(Lockset &LSet, Expr *MutexExp, const NamedDecl *D,<br>
LockKind LK, SourceLocation Loc);<br>
<br>
- void runAnalysis(AnalysisContext &AC);<br>
+ void runAnalysis(AnalysisDeclContext &AC);<br>
};<br>
<br>
/// \brief Compute the intersection of two locksets and issue warnings for any<br>
@@ -710,7 +710,7 @@<br>
/// We traverse the blocks in the CFG, compute the set of mutexes that are held<br>
/// at the end of each block, and issue warnings for thread safety violations.<br>
/// Each block in the CFG is traversed exactly once.<br>
-void ThreadSafetyAnalyzer::runAnalysis(AnalysisContext &AC) {<br>
+void ThreadSafetyAnalyzer::runAnalysis(AnalysisDeclContext &AC) {<br>
CFG *CFGraph = AC.getCFG();<br>
if (!CFGraph) return;<br>
const NamedDecl *D = dyn_cast_or_null<NamedDecl>(AC.getDecl());<br>
@@ -869,7 +869,7 @@<br>
/// We traverse the blocks in the CFG, compute the set of mutexes that are held<br>
/// at the end of each block, and issue warnings for thread safety violations.<br>
/// Each block in the CFG is traversed exactly once.<br>
-void runThreadSafetyAnalysis(AnalysisContext &AC,<br>
+void runThreadSafetyAnalysis(AnalysisDeclContext &AC,<br>
ThreadSafetyHandler &Handler) {<br>
ThreadSafetyAnalyzer Analyzer(Handler);<br>
Analyzer.runAnalysis(AC);<br>
<br>
Modified: cfe/trunk/lib/Analysis/UninitializedValues.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/UninitializedValues.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/UninitializedValues.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/Analysis/UninitializedValues.cpp (original)<br>
+++ cfe/trunk/lib/Analysis/UninitializedValues.cpp Sun Oct 23 20:32:45 2011<br>
@@ -337,7 +337,7 @@<br>
class TransferFunctions : public StmtVisitor<TransferFunctions> {<br>
CFGBlockValues &vals;<br>
const CFG &cfg;<br>
- AnalysisContext ∾<br>
+ AnalysisDeclContext ∾<br>
UninitVariablesHandler *handler;<br>
<br>
/// The last DeclRefExpr seen when analyzing a block. Used to<br>
@@ -356,7 +356,7 @@<br>
<br>
public:<br>
TransferFunctions(CFGBlockValues &vals, const CFG &cfg,<br>
- AnalysisContext &ac,<br>
+ AnalysisDeclContext &ac,<br>
UninitVariablesHandler *handler)<br>
: vals(vals), cfg(cfg), ac(ac), handler(handler),<br>
lastDR(0), lastLoad(0),<br>
@@ -615,7 +615,7 @@<br>
//====------------------------------------------------------------------------//<br>
<br>
static bool runOnBlock(const CFGBlock *block, const CFG &cfg,<br>
- AnalysisContext &ac, CFGBlockValues &vals,<br>
+ AnalysisDeclContext &ac, CFGBlockValues &vals,<br>
llvm::BitVector &wasAnalyzed,<br>
UninitVariablesHandler *handler = 0) {<br>
<br>
@@ -672,7 +672,7 @@<br>
void clang::runUninitializedVariablesAnalysis(<br>
const DeclContext &dc,<br>
const CFG &cfg,<br>
- AnalysisContext &ac,<br>
+ AnalysisDeclContext &ac,<br>
UninitVariablesHandler &handler,<br>
UninitVariablesAnalysisStats &stats) {<br>
CFGBlockValues vals(cfg);<br>
<br>
Modified: cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp (original)<br>
+++ cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp Sun Oct 23 20:32:45 2011<br>
@@ -63,7 +63,7 @@<br>
}<br>
<br>
/// CheckUnreachable - Check for unreachable code.<br>
-static void CheckUnreachable(Sema &S, AnalysisContext &AC) {<br>
+static void CheckUnreachable(Sema &S, AnalysisDeclContext &AC) {<br>
UnreachableCodeHandler UC(S);<br>
reachable_code::FindUnreachableCode(AC, UC);<br>
}<br>
@@ -89,7 +89,7 @@<br>
/// return. We assume NeverFallThrough iff we never fall off the end of the<br>
/// statement but we may return. We assume that functions not marked noreturn<br>
/// will return.<br>
-static ControlFlowKind CheckFallThrough(AnalysisContext &AC) {<br>
+static ControlFlowKind CheckFallThrough(AnalysisDeclContext &AC) {<br>
CFG *cfg = AC.getCFG();<br>
if (cfg == 0) return UnknownFallThrough;<br>
<br>
@@ -312,7 +312,7 @@<br>
static void CheckFallThroughForBody(Sema &S, const Decl *D, const Stmt *Body,<br>
const BlockExpr *blkExpr,<br>
const CheckFallThroughDiagnostics& CD,<br>
- AnalysisContext &AC) {<br>
+ AnalysisDeclContext &AC) {<br>
<br>
bool ReturnsVoid = false;<br>
bool HasNoReturn = false;<br>
@@ -830,7 +830,7 @@<br>
const Stmt *Body = D->getBody();<br>
assert(Body);<br>
<br>
- AnalysisContext AC(/* AnalysisContextManager */ 0, D, 0);<br>
+ AnalysisDeclContext AC(/* AnalysisDeclContextManager */ 0, D, 0);<br>
<br>
// Don't generate EH edges for CallExprs as we'd like to avoid the n^2<br>
// explosion for destrutors that can result and the compile time hit.<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp Sun Oct 23 20:32:45 2011<br>
@@ -54,7 +54,7 @@<br>
<br>
// Get the CFG and the Decl of this block<br>
C = LC->getCFG();<br>
- D = LC->getAnalysisContext()->getDecl();<br>
+ D = LC->getAnalysisDeclContext()->getDecl();<br>
<br>
unsigned total = 0, unreachable = 0;<br>
<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp Sun Oct 23 20:32:45 2011<br>
@@ -36,14 +36,14 @@<br>
namespace {<br>
class WalkAST : public StmtVisitor<WalkAST> {<br>
BugReporter &BR;<br>
- AnalysisContext* AC;<br>
+ AnalysisDeclContext* AC;<br>
enum { num_setids = 6 };<br>
IdentifierInfo *II_setid[num_setids];<br>
<br>
const bool CheckRand;<br>
<br>
public:<br>
- WalkAST(BugReporter &br, AnalysisContext* ac)<br>
+ WalkAST(BugReporter &br, AnalysisDeclContext* ac)<br>
: BR(br), AC(ac), II_setid(),<br>
CheckRand(isArc4RandomAvailable(BR.getContext())) {}<br>
<br>
@@ -611,7 +611,7 @@<br>
public:<br>
void checkASTCodeBody(const Decl *D, AnalysisManager& mgr,<br>
BugReporter &BR) const {<br>
- WalkAST walker(BR, mgr.getAnalysisContext(D));<br>
+ WalkAST walker(BR, mgr.getAnalysisDeclContext(D));<br>
walker.Visit(D->getBody());<br>
}<br>
};<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Checkers/CheckSizeofPointer.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/CheckSizeofPointer.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/CheckSizeofPointer.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Checkers/CheckSizeofPointer.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Checkers/CheckSizeofPointer.cpp Sun Oct 23 20:32:45 2011<br>
@@ -24,10 +24,10 @@<br>
namespace {<br>
class WalkAST : public StmtVisitor<WalkAST> {<br>
BugReporter &BR;<br>
- AnalysisContext* AC;<br>
+ AnalysisDeclContext* AC;<br>
<br>
public:<br>
- WalkAST(BugReporter &br, AnalysisContext* ac) : BR(br), AC(ac) {}<br>
+ WalkAST(BugReporter &br, AnalysisDeclContext* ac) : BR(br), AC(ac) {}<br>
void VisitUnaryExprOrTypeTraitExpr(UnaryExprOrTypeTraitExpr *E);<br>
void VisitStmt(Stmt *S) { VisitChildren(S); }<br>
void VisitChildren(Stmt *S);<br>
@@ -80,7 +80,7 @@<br>
public:<br>
void checkASTCodeBody(const Decl *D, AnalysisManager& mgr,<br>
BugReporter &BR) const {<br>
- WalkAST walker(BR, mgr.getAnalysisContext(D));<br>
+ WalkAST walker(BR, mgr.getAnalysisDeclContext(D));<br>
walker.Visit(D->getBody());<br>
}<br>
};<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp Sun Oct 23 20:32:45 2011<br>
@@ -72,7 +72,7 @@<br>
const CFG &cfg;<br>
ASTContext &Ctx;<br>
BugReporter& BR;<br>
- AnalysisContext* AC;<br>
+ AnalysisDeclContext* AC;<br>
ParentMap& Parents;<br>
llvm::SmallPtrSet<const VarDecl*, 20> Escaped;<br>
llvm::OwningPtr<ReachableCode> reachableCode;<br>
@@ -82,7 +82,7 @@<br>
<br>
public:<br>
DeadStoreObs(const CFG &cfg, ASTContext &ctx,<br>
- BugReporter& br, AnalysisContext* ac, ParentMap& parents,<br>
+ BugReporter& br, AnalysisDeclContext* ac, ParentMap& parents,<br>
llvm::SmallPtrSet<const VarDecl*, 20> &escaped)<br>
: cfg(cfg), Ctx(ctx), BR(br), AC(ac), Parents(parents),<br>
Escaped(escaped), currentBlock(0) {}<br>
@@ -350,7 +350,7 @@<br>
BugReporter &BR) const {<br>
if (LiveVariables *L = mgr.getAnalysis<LiveVariables>(D)) {<br>
CFG &cfg = *mgr.getCFG(D);<br>
- AnalysisContext *AC = mgr.getAnalysisContext(D);<br>
+ AnalysisDeclContext *AC = mgr.getAnalysisDeclContext(D);<br>
ParentMap &pmap = mgr.getParentMap(D);<br>
FindEscaped FS(&cfg);<br>
FS.getCFG().VisitBlockStmts(FS);<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Checkers/IdempotentOperationChecker.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/IdempotentOperationChecker.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/IdempotentOperationChecker.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Checkers/IdempotentOperationChecker.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Checkers/IdempotentOperationChecker.cpp Sun Oct 23 20:32:45 2011<br>
@@ -82,16 +82,16 @@<br>
<br>
// False positive reduction methods<br>
static bool isSelfAssign(const Expr *LHS, const Expr *RHS);<br>
- static bool isUnused(const Expr *E, AnalysisContext *AC);<br>
+ static bool isUnused(const Expr *E, AnalysisDeclContext *AC);<br>
static bool isTruncationExtensionAssignment(const Expr *LHS,<br>
const Expr *RHS);<br>
- static bool pathWasCompletelyAnalyzed(AnalysisContext *AC,<br>
+ static bool pathWasCompletelyAnalyzed(AnalysisDeclContext *AC,<br>
const CFGBlock *CB,<br>
const CoreEngine &CE);<br>
static bool CanVary(const Expr *Ex,<br>
- AnalysisContext *AC);<br>
+ AnalysisDeclContext *AC);<br>
static bool isConstantOrPseudoConstant(const DeclRefExpr *DR,<br>
- AnalysisContext *AC);<br>
+ AnalysisDeclContext *AC);<br>
static bool containsNonLocalVarDecl(const Stmt *S);<br>
<br>
// Hash table and related data structures<br>
@@ -116,7 +116,7 @@<br>
// been created yet.<br>
BinaryOperatorData &Data = hash[B];<br>
Assumption &A = Data.assumption;<br>
- AnalysisContext *AC = C.getCurrentAnalysisContext();<br>
+ AnalysisDeclContext *AC = C.getCurrentAnalysisDeclContext();<br>
<br>
// If we already have visited this node on a path that does not contain an<br>
// idempotent operation, return immediately.<br>
@@ -366,8 +366,8 @@<br>
// warning<br>
if (Eng.hasWorkRemaining()) {<br>
// If we can trace back<br>
- AnalysisContext *AC = (*ES.begin())->getLocationContext()<br>
- ->getAnalysisContext();<br>
+ AnalysisDeclContext *AC = (*ES.begin())->getLocationContext()<br>
+ ->getAnalysisDeclContext();<br>
if (!pathWasCompletelyAnalyzed(AC,<br>
AC->getCFGStmtMap()->getBlock(B),<br>
Eng.getCoreEngine()))<br>
@@ -487,7 +487,7 @@<br>
// Returns true if the Expr points to a VarDecl that is not read anywhere<br>
// outside of self-assignments.<br>
bool IdempotentOperationChecker::isUnused(const Expr *E,<br>
- AnalysisContext *AC) {<br>
+ AnalysisDeclContext *AC) {<br>
if (!E)<br>
return false;<br>
<br>
@@ -531,7 +531,7 @@<br>
// Returns false if a path to this block was not completely analyzed, or true<br>
// otherwise.<br>
bool<br>
-IdempotentOperationChecker::pathWasCompletelyAnalyzed(AnalysisContext *AC,<br>
+IdempotentOperationChecker::pathWasCompletelyAnalyzed(AnalysisDeclContext *AC,<br>
const CFGBlock *CB,<br>
const CoreEngine &CE) {<br>
<br>
@@ -615,7 +615,7 @@<br>
// expression may also involve a variable that behaves like a constant. The<br>
// function returns true if the expression varies, and false otherwise.<br>
bool IdempotentOperationChecker::CanVary(const Expr *Ex,<br>
- AnalysisContext *AC) {<br>
+ AnalysisDeclContext *AC) {<br>
// Parentheses and casts are irrelevant here<br>
Ex = Ex->IgnoreParenCasts();<br>
<br>
@@ -699,7 +699,7 @@<br>
// Returns true if a DeclRefExpr is or behaves like a constant.<br>
bool IdempotentOperationChecker::isConstantOrPseudoConstant(<br>
const DeclRefExpr *DR,<br>
- AnalysisContext *AC) {<br>
+ AnalysisDeclContext *AC) {<br>
// Check if the type of the Decl is const-qualified<br>
if (DR->getType().isConstQualified())<br>
return true;<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Checkers/MallocOverflowSecurityChecker.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/MallocOverflowSecurityChecker.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/MallocOverflowSecurityChecker.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Checkers/MallocOverflowSecurityChecker.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Checkers/MallocOverflowSecurityChecker.cpp Sun Oct 23 20:32:45 2011<br>
@@ -205,7 +205,7 @@<br>
<br>
// Delete any possible overflows which have a comparison.<br>
CheckOverflowOps c(PossibleMallocOverflows, BR.getContext());<br>
- c.Visit(mgr.getAnalysisContext(D)->getBody());<br>
+ c.Visit(mgr.getAnalysisDeclContext(D)->getBody());<br>
<br>
// Output warnings for all overflows that are left.<br>
for (CheckOverflowOps::theVecType::iterator<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp Sun Oct 23 20:32:45 2011<br>
@@ -194,7 +194,7 @@<br>
<br>
// FIXME: A callback should disable checkers at the start of functions.<br>
if (!shouldRunOnFunctionOrMethod(dyn_cast<NamedDecl>(<br>
- C.getCurrentAnalysisContext()->getDecl())))<br>
+ C.getCurrentAnalysisDeclContext()->getDecl())))<br>
return;<br>
<br>
if (isInitMessage(msg)) {<br>
@@ -221,7 +221,7 @@<br>
CheckerContext &C) const {<br>
// FIXME: A callback should disable checkers at the start of functions.<br>
if (!shouldRunOnFunctionOrMethod(dyn_cast<NamedDecl>(<br>
- C.getCurrentAnalysisContext()->getDecl())))<br>
+ C.getCurrentAnalysisDeclContext()->getDecl())))<br>
return;<br>
<br>
checkForInvalidSelf(E->getBase(), C,<br>
@@ -233,7 +233,7 @@<br>
CheckerContext &C) const {<br>
// FIXME: A callback should disable checkers at the start of functions.<br>
if (!shouldRunOnFunctionOrMethod(dyn_cast<NamedDecl>(<br>
- C.getCurrentAnalysisContext()->getDecl())))<br>
+ C.getCurrentAnalysisDeclContext()->getDecl())))<br>
return;<br>
<br>
checkForInvalidSelf(S->getRetValue(), C,<br>
@@ -335,7 +335,7 @@<br>
<br>
/// \brief Returns true if the location is 'self'.<br>
static bool isSelfVar(SVal location, CheckerContext &C) {<br>
- AnalysisContext *analCtx = C.getCurrentAnalysisContext();<br>
+ AnalysisDeclContext *analCtx = C.getCurrentAnalysisDeclContext();<br>
if (!analCtx->getSelfDecl())<br>
return false;<br>
if (!isa<loc::MemRegionVal>(location))<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp Sun Oct 23 20:32:45 2011<br>
@@ -69,7 +69,7 @@<br>
<br>
// Save the CFG if we don't have it already<br>
if (!C)<br>
- C = LC->getAnalysisContext()->getUnoptimizedCFG();<br>
+ C = LC->getAnalysisDeclContext()->getUnoptimizedCFG();<br>
if (!PM)<br>
PM = &LC->getParentMap();<br>
<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Core/AnalysisManager.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/AnalysisManager.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/AnalysisManager.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Core/AnalysisManager.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Core/AnalysisManager.cpp Sun Oct 23 20:32:45 2011<br>
@@ -66,8 +66,8 @@<br>
}<br>
<br>
<br>
-AnalysisContext *<br>
-AnalysisManager::getAnalysisContextInAnotherTU(const Decl *D) {<br>
+AnalysisDeclContext *<br>
+AnalysisManager::getAnalysisDeclContextInAnotherTU(const Decl *D) {<br>
idx::Entity Ent = idx::Entity::get(const_cast<Decl *>(D),<br>
Idxer->getProgram());<br>
FunctionDecl *FuncDef;<br>
@@ -77,7 +77,7 @@<br>
if (FuncDef == 0)<br>
return 0;<br>
<br>
- // This AnalysisContext wraps function definition in another translation unit.<br>
+ // This AnalysisDeclContext wraps function definition in another translation unit.<br>
// But it is still owned by the AnalysisManager associated with the current<br>
// translation unit.<br>
return AnaCtxMgr.getContext(FuncDef, TU);<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Core/CoreEngine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/CoreEngine.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/CoreEngine.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Core/CoreEngine.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Core/CoreEngine.cpp Sun Oct 23 20:32:45 2011<br>
@@ -725,8 +725,8 @@<br>
ExprEngine NewEng(AMgr, GCEnabled);<br>
<br>
// Create the new LocationContext.<br>
- AnalysisContext *NewAnaCtx =<br>
- AMgr.getAnalysisContext(CalleeCtx->getDecl(),<br>
+ AnalysisDeclContext *NewAnaCtx =<br>
+ AMgr.getAnalysisDeclContext(CalleeCtx->getDecl(),<br>
CalleeCtx->getTranslationUnit());<br>
<br>
const StackFrameContext *OldLocCtx = CalleeCtx;<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Core/ExprEngine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/ExprEngine.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/ExprEngine.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Core/ExprEngine.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Core/ExprEngine.cpp Sun Oct 23 20:32:45 2011<br>
@@ -53,7 +53,7 @@<br>
<br>
ExprEngine::ExprEngine(AnalysisManager &mgr, bool gcEnabled)<br>
: AMgr(mgr),<br>
- AnalysisContexts(mgr.getAnalysisContextManager()),<br>
+ AnalysisDeclContexts(mgr.getAnalysisDeclContextManager()),<br>
Engine(*this),<br>
G(Engine.getGraph()),<br>
Builder(NULL),<br>
@@ -1509,7 +1509,7 @@<br>
// Check if the function definition is in the same translation unit.<br>
if (FD->hasBody(FD)) {<br>
const StackFrameContext *stackFrame =<br>
- AMgr.getStackFrame(AMgr.getAnalysisContext(FD),<br>
+ AMgr.getStackFrame(AMgr.getAnalysisDeclContext(FD),<br>
Pred->getLocationContext(),<br>
CE, Builder->getBlock(), Builder->getIndex());<br>
// Now we have the definition of the callee, create a CallEnter node.<br>
@@ -1522,7 +1522,7 @@<br>
<br>
// Check if we can find the function definition in other translation units.<br>
if (AMgr.hasIndexer()) {<br>
- AnalysisContext *C = AMgr.getAnalysisContextInAnotherTU(FD);<br>
+ AnalysisDeclContext *C = AMgr.getAnalysisDeclContextInAnotherTU(FD);<br>
if (C == 0)<br>
return false;<br>
const StackFrameContext *stackFrame =<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp Sun Oct 23 20:32:45 2011<br>
@@ -224,7 +224,7 @@<br>
<br>
// Create the context for 'this' region.<br>
const StackFrameContext *SFC =<br>
- AnalysisContexts.getContext(DD)-><br>
+ AnalysisDeclContexts.getContext(DD)-><br>
getStackFrame(Pred->getLocationContext(), S,<br>
Builder->getBlock(), Builder->getIndex());<br>
<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Core/MemRegion.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/MemRegion.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/MemRegion.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Core/MemRegion.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Core/MemRegion.cpp Sun Oct 23 20:32:45 2011<br>
@@ -337,7 +337,7 @@<br>
<br>
void BlockTextRegion::ProfileRegion(llvm::FoldingSetNodeID& ID,<br>
const BlockDecl *BD, CanQualType,<br>
- const AnalysisContext *AC,<br>
+ const AnalysisDeclContext *AC,<br>
const MemRegion*) {<br>
ID.AddInteger(MemRegion::BlockTextRegionKind);<br>
ID.AddPointer(BD);<br>
@@ -590,7 +590,7 @@<br>
const BlockTextRegion *BTR =<br>
getBlockTextRegion(BD,<br>
C.getCanonicalType(BD->getSignatureAsWritten()->getType()),<br>
- STC->getAnalysisContext());<br>
+ STC->getAnalysisDeclContext());<br>
sReg = getGlobalsRegion(BTR);<br>
}<br>
else {<br>
@@ -678,7 +678,7 @@<br>
<br>
const BlockTextRegion *<br>
MemRegionManager::getBlockTextRegion(const BlockDecl *BD, CanQualType locTy,<br>
- AnalysisContext *AC) {<br>
+ AnalysisDeclContext *AC) {<br>
return getSubRegion<BlockTextRegion>(BD, locTy, AC, getCodeRegion());<br>
}<br>
<br>
@@ -928,8 +928,8 @@<br>
if (ReferencedVars)<br>
return;<br>
<br>
- AnalysisContext *AC = getCodeRegion()->getAnalysisContext();<br>
- AnalysisContext::referenced_decls_iterator I, E;<br>
+ AnalysisDeclContext *AC = getCodeRegion()->getAnalysisDeclContext();<br>
+ AnalysisDeclContext::referenced_decls_iterator I, E;<br>
llvm::tie(I, E) = AC->getReferencedBlockVars(BC->getDecl());<br>
<br>
if (I == E) {<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Core/PathDiagnostic.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/PathDiagnostic.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/PathDiagnostic.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Core/PathDiagnostic.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Core/PathDiagnostic.cpp Sun Oct 23 20:32:45 2011<br>
@@ -94,9 +94,9 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
static SourceLocation getValidSourceLocation(const Stmt* S,<br>
- LocationOrAnalysisContext LAC) {<br>
+ LocationOrAnalysisDeclContext LAC) {<br>
SourceLocation L = S->getLocStart();<br>
- assert(!LAC.isNull() && "A valid LocationContext or AnalysisContext should "<br>
+ assert(!LAC.isNull() && "A valid LocationContext or AnalysisDeclContext should "<br>
"be passed to PathDiagnosticLocation upon creation.");<br>
<br>
// S might be a temporary statement that does not have a location in the<br>
@@ -107,7 +107,7 @@<br>
if (<a href="http://LAC.is">LAC.is</a><const LocationContext*>())<br>
PM = &LAC.get<const LocationContext*>()->getParentMap();<br>
else<br>
- PM = &LAC.get<AnalysisContext*>()->getParentMap();<br>
+ PM = &LAC.get<AnalysisDeclContext*>()->getParentMap();<br>
<br>
while (!L.isValid()) {<br>
S = PM->getParent(S);<br>
@@ -127,7 +127,7 @@<br>
PathDiagnosticLocation<br>
PathDiagnosticLocation::createBegin(const Stmt *S,<br>
const SourceManager &SM,<br>
- LocationOrAnalysisContext LAC) {<br>
+ LocationOrAnalysisDeclContext LAC) {<br>
return PathDiagnosticLocation(getValidSourceLocation(S, LAC),<br>
SM, SingleLocK);<br>
}<br>
@@ -229,7 +229,7 @@<br>
<br>
FullSourceLoc<br>
PathDiagnosticLocation::genLocation(SourceLocation L,<br>
- LocationOrAnalysisContext LAC) const {<br>
+ LocationOrAnalysisDeclContext LAC) const {<br>
assert(isValid());<br>
// Note that we want a 'switch' here so that the compiler can warn us in<br>
// case we add more cases.<br>
@@ -248,7 +248,7 @@<br>
}<br>
<br>
PathDiagnosticRange<br>
- PathDiagnosticLocation::genRange(LocationOrAnalysisContext LAC) const {<br>
+ PathDiagnosticLocation::genRange(LocationOrAnalysisDeclContext LAC) const {<br>
assert(isValid());<br>
// Note that we want a 'switch' here so that the compiler can warn us in<br>
// case we add more cases.<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Core/SValBuilder.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/SValBuilder.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/SValBuilder.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Core/SValBuilder.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Core/SValBuilder.cpp Sun Oct 23 20:32:45 2011<br>
@@ -155,7 +155,7 @@<br>
CanQualType locTy,<br>
const LocationContext *locContext) {<br>
const BlockTextRegion *BC =<br>
- MemMgr.getBlockTextRegion(block, locTy, locContext->getAnalysisContext());<br>
+ MemMgr.getBlockTextRegion(block, locTy, locContext->getAnalysisDeclContext());<br>
const BlockDataRegion *BD = MemMgr.getBlockDataRegion(BC, locContext);<br>
return loc::MemRegionVal(BD);<br>
}<br>
<br>
Modified: cfe/trunk/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp (original)<br>
+++ cfe/trunk/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp Sun Oct 23 20:32:45 2011<br>
@@ -278,7 +278,7 @@<br>
if (!Opts.AnalyzeAll && !SM.isFromMainFile(SL))<br>
return;<br>
<br>
- // Clear the AnalysisManager of old AnalysisContexts.<br>
+ // Clear the AnalysisManager of old AnalysisDeclContexts.<br>
Mgr->ClearContexts();<br>
<br>
// Dispatch on the actions.<br>
@@ -318,7 +318,7 @@<br>
}<br>
<br>
// Execute the worklist algorithm.<br>
- Eng.ExecuteWorkList(mgr.getAnalysisContextManager().getStackFrame(D, 0),<br>
+ Eng.ExecuteWorkList(mgr.getAnalysisDeclContextManager().getStackFrame(D, 0),<br>
mgr.getMaxNodes());<br>
<br>
// Release the auditor (if any) so that it doesn't monitor the graph<br>
<br>
Modified: cfe/trunk/test/Analysis/inline3.c<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Analysis/inline3.c?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Analysis/inline3.c?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/test/Analysis/inline3.c (original)<br>
+++ cfe/trunk/test/Analysis/inline3.c Sun Oct 23 20:32:45 2011<br>
@@ -1,6 +1,6 @@<br>
// RUN: %clang_cc1 -analyze -analyzer-checker=core -analyzer-inline-call -analyzer-store region -verify %s<br>
<br>
-// Test when entering f1(), we set the right AnalysisContext to Environment.<br>
+// Test when entering f1(), we set the right AnalysisDeclContext to Environment.<br>
// Otherwise, block-level expr '1 && a' would not be block-level.<br>
int a;<br>
<br>
<br>
Modified: cfe/trunk/test/SemaCXX/missing-header.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaCXX/missing-header.cpp?rev=142782&r1=142781&r2=142782&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaCXX/missing-header.cpp?rev=142782&r1=142781&r2=142782&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/test/SemaCXX/missing-header.cpp (original)<br>
+++ cfe/trunk/test/SemaCXX/missing-header.cpp Sun Oct 23 20:32:45 2011<br>
@@ -2,8 +2,8 @@<br>
<br>
#include "not exist" // expected-error{{'not exist' file not found}}<br>
<br>
-class AnalysisContext {};<br>
-static ControlFlowKind CheckFallThrough(AnalysisContext &AC) {<br>
+class AnalysisDeclContext {};<br>
+static ControlFlowKind CheckFallThrough(AnalysisDeclContext &AC) {<br>
if (const AsmStmt *AS = dyn_cast<AsmStmt>(S)) {}<br>
bool NoReturnEdge = false;<br>
}<br>
<br>
<br>
_______________________________________________<br>
cfe-commits mailing list<br>
<a href="mailto:cfe-commits@cs.uiuc.edu" target="_blank">cfe-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br>
</blockquote></div><br>
</blockquote></div><br>
</div></blockquote></body></html>