aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2009-11-25 01:34:30 +0000
committerTed Kremenek <kremenek@apple.com>2009-11-25 01:34:30 +0000
commit721903eca33f6115296083aed17685eaa73d3e8c (patch)
tree5c2c9ba1f720d5d5d71258b279676f4c2a74f0ec
parentc95ad9ff6e574aecdd759542d5578bc65d586d93 (diff)
Allow building of CFGs for ASTs that contain BlockExprs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89830 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Analysis/CFG.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/Analysis/CFG.cpp b/lib/Analysis/CFG.cpp
index 31417597f7..0c7ebef81c 100644
--- a/lib/Analysis/CFG.cpp
+++ b/lib/Analysis/CFG.cpp
@@ -461,9 +461,12 @@ CFGBlock *CFGBuilder::VisitBinaryOperator(BinaryOperator *B, bool alwaysAdd) {
return VisitStmt(B, alwaysAdd);
}
-CFGBlock *CFGBuilder::VisitBlockExpr(BlockExpr* E, bool alwaysAdd) {
- // FIXME
- return NYS();
+CFGBlock *CFGBuilder::VisitBlockExpr(BlockExpr *E, bool alwaysAdd) {
+ if (alwaysAdd) {
+ autoCreateBlock();
+ AppendStmt(Block, E);
+ }
+ return Block;
}
CFGBlock *CFGBuilder::VisitBlockDeclRefExpr(BlockDeclRefExpr* E,