]> granicus.if.org Git - clang/commit
Remove unused, awkward CFGStmtVisitor and subclasses.
authorJordan Rose <jordan_rose@apple.com>
Wed, 15 May 2013 23:22:55 +0000 (23:22 +0000)
committerJordan Rose <jordan_rose@apple.com>
Wed, 15 May 2013 23:22:55 +0000 (23:22 +0000)
commitd049b40ef411eee12a735233dbe04fdc42c67e1a
tree5bbe5de61a3a4c0b9b5116f98994f3839fd828ea
parenta1bfe1ceeb633fe955bcaf218a101106ad97fc74
Remove unused, awkward CFGStmtVisitor and subclasses.

This class is a StmtVisitor that distinguishes between block-level and
non-block-level statements in a CFG. However, it does so using a hard-coded
idea of which statements might be block-level, which probably isn't accurate
anymore. The only implementer of the CFGStmtVisitor hierarchy was the
analyzer's DeadStoresChecker, and the analyzer creates a linearized CFG
anyway (every non-trivial statement is a block-level statement).

This also allows us to remove the block-expr map ("BlkExprMap"), which
mapped statements to positions in the CFG. Apart from having a helper type
that really should have just been Optional<unsigned>, it was only being
used to ask /if/ a particular expression was block-level, for traversal
purposes in CFGStmtVisitor.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181945 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Analysis/CFG.h
include/clang/Analysis/Support/BlkExprDeclBitVector.h [deleted file]
include/clang/Analysis/Visitors/CFGRecStmtDeclVisitor.h [deleted file]
include/clang/Analysis/Visitors/CFGRecStmtVisitor.h [deleted file]
include/clang/Analysis/Visitors/CFGStmtVisitor.h [deleted file]
lib/Analysis/CFG.cpp
lib/Analysis/UninitializedValues.cpp
lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp