]> granicus.if.org Git - clang/commit
Added extensions (subclasses) to the StmtVisitor class that
authorTed Kremenek <kremenek@apple.com>
Wed, 12 Sep 2007 19:09:12 +0000 (19:09 +0000)
committerTed Kremenek <kremenek@apple.com>
Wed, 12 Sep 2007 19:09:12 +0000 (19:09 +0000)
commit73c80c2b8adec0b86de16f3a0c2c5c7861a3e6c2
tree620c2042a223500c56ed4730da8de1dbb8a0e325
parente55cd00d23f0951c29b3b93e6034b2c4b3933a23
Added extensions (subclasses) to the StmtVisitor class that
are useful for dataflow analysis: CFGStmtVisitor and DataflowStmtVisitor.

CFGStmtVisitor is the same as StmtVisitor is that it has separate visitors
for "root" statements in a CFGBlock (statements that have a designated
slot int the list of statements in a CFGBlock).  It also recognizes statements
that have implicit control-flow, and calls special visitor methods for those.

DataflowStmtVisitor extends CFGStmtVisitor to serve as a template for
implementing transfer functions.  It does a pre-/post-order traversal of
substatements depending on whether we are doing a forward/backward analysis.
It also has special handling for implicit-control-flow statements so that
they are visited only once.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@41884 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Analysis/CFGStmtVisitor.h [new file with mode: 0644]
include/clang/Analysis/DataflowStmtVisitor.h [new file with mode: 0644]