diff options
author | David Blaikie <dblaikie@gmail.com> | 2013-02-21 20:58:29 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2013-02-21 20:58:29 +0000 |
commit | fdf6a279c9a75c778eba382d9a156697092982a1 (patch) | |
tree | e67bc01445260b8cd78ddfd21f1a9f4fe059ac79 /lib/Sema/AnalysisBasedWarnings.cpp | |
parent | 05f8ff134d5f270bd7bfe4aaef491bd3febddea1 (diff) |
Replace CFGElement llvm::cast support to be well-defined.
See r175462 for another example/more details.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175796 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/AnalysisBasedWarnings.cpp')
-rw-r--r-- | lib/Sema/AnalysisBasedWarnings.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/Sema/AnalysisBasedWarnings.cpp b/lib/Sema/AnalysisBasedWarnings.cpp index e9cf7ccd85..9a67d4991f 100644 --- a/lib/Sema/AnalysisBasedWarnings.cpp +++ b/lib/Sema/AnalysisBasedWarnings.cpp @@ -158,7 +158,7 @@ static ControlFlowKind CheckFallThrough(AnalysisDeclContext &AC) { CFGBlock::const_reverse_iterator ri = B.rbegin(), re = B.rend(); for ( ; ri != re ; ++ri) - if (isa<CFGStmt>(*ri)) + if (ri->getAs<CFGStmt>()) break; // No more CFGElements in the block? @@ -172,7 +172,7 @@ static ControlFlowKind CheckFallThrough(AnalysisDeclContext &AC) { continue; } - CFGStmt CS = cast<CFGStmt>(*ri); + CFGStmt CS = ri->castAs<CFGStmt>(); const Stmt *S = CS.getStmt(); if (isa<ReturnStmt>(S)) { HasLiveReturn = true; @@ -762,8 +762,8 @@ namespace { for (CFGBlock::const_reverse_iterator ElemIt = P->rbegin(), ElemEnd = P->rend(); ElemIt != ElemEnd; ++ElemIt) { - if (const CFGStmt *CS = ElemIt->getAs<CFGStmt>()) { - if (const AttributedStmt *AS = asFallThroughAttr(CS->getStmt())) { + if (CFGStmt CS = ElemIt->getAs<CFGStmt>()) { + if (const AttributedStmt *AS = asFallThroughAttr(CS.getStmt())) { S.Diag(AS->getLocStart(), diag::warn_fallthrough_attr_unreachable); markFallthroughVisited(AS); @@ -833,8 +833,8 @@ namespace { for (CFGBlock::const_reverse_iterator ElemIt = B.rbegin(), ElemEnd = B.rend(); ElemIt != ElemEnd; ++ElemIt) { - if (const CFGStmt *CS = ElemIt->getAs<CFGStmt>()) - return CS->getStmt(); + if (CFGStmt CS = ElemIt->getAs<CFGStmt>()) + return CS.getStmt(); } // Workaround to detect a statement thrown out by CFGBuilder: // case X: {} case Y: |