diff options
author | Ted Kremenek <kremenek@apple.com> | 2009-01-24 00:55:43 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2009-01-24 00:55:43 +0000 |
commit | 3148eb4a75f70f2636075c364d03104223f004d3 (patch) | |
tree | 5b7f56dc02c2201a7fed6502e57845b1bfec6a04 /include/clang/Analysis/PathSensitive/ExplodedGraph.h | |
parent | aa23b570b059e8d29c69a656bbdc42f652f7c308 (diff) |
More hacking on static analyzer diagnostics. When emitting summary diagnostics the code paths for diagnostics involving paths or single locations are now unified. This patch also constifies many arguments/methods that are touched by this logic, leading to a nice overall code cleanup.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62903 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Analysis/PathSensitive/ExplodedGraph.h')
-rw-r--r-- | include/clang/Analysis/PathSensitive/ExplodedGraph.h | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/include/clang/Analysis/PathSensitive/ExplodedGraph.h b/include/clang/Analysis/PathSensitive/ExplodedGraph.h index 3406d178dd..954b096b8e 100644 --- a/include/clang/Analysis/PathSensitive/ExplodedGraph.h +++ b/include/clang/Analysis/PathSensitive/ExplodedGraph.h @@ -179,9 +179,9 @@ public: // Iterators over successor and predecessor vertices. typedef ExplodedNode** succ_iterator; - typedef const ExplodedNode** const_succ_iterator; + typedef const ExplodedNode* const * const_succ_iterator; typedef ExplodedNode** pred_iterator; - typedef const ExplodedNode** const_pred_iterator; + typedef const ExplodedNode* const * const_pred_iterator; pred_iterator pred_begin() { return (ExplodedNode**) Preds.begin(); } pred_iterator pred_end() { return (ExplodedNode**) Preds.end(); } @@ -289,8 +289,8 @@ public: return llvm::dyn_cast<FunctionDecl>(&CodeDecl); } - ExplodedGraphImpl* Trim(ExplodedNodeImpl** NBeg, - ExplodedNodeImpl** NEnd) const; + ExplodedGraphImpl* Trim(const ExplodedNodeImpl* const * NBeg, + const ExplodedNodeImpl* const * NEnd) const; }; @@ -411,15 +411,18 @@ public: // Utility. - ExplodedGraph* Trim(NodeTy** NBeg, NodeTy** NEnd) const { + ExplodedGraph* + Trim(const NodeTy* const* NBeg, const NodeTy* const* NEnd) const { if (NBeg == NEnd) return NULL; assert (NBeg < NEnd); - ExplodedNodeImpl** NBegImpl = (ExplodedNodeImpl**) NBeg; - ExplodedNodeImpl** NEndImpl = (ExplodedNodeImpl**) NEnd; + const ExplodedNodeImpl* const* NBegImpl = + (const ExplodedNodeImpl* const*) NBeg; + const ExplodedNodeImpl* const* NEndImpl = + (const ExplodedNodeImpl* const*) NEnd; return static_cast<ExplodedGraph*>(ExplodedGraphImpl::Trim(NBegImpl, NEndImpl)); |