diff options
| -rw-r--r-- | clang/lib/Analysis/Consumed.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/clang/lib/Analysis/Consumed.cpp b/clang/lib/Analysis/Consumed.cpp index b540d75898d..7cd029020a2 100644 --- a/clang/lib/Analysis/Consumed.cpp +++ b/clang/lib/Analysis/Consumed.cpp @@ -1103,12 +1103,16 @@ bool ConsumedAnalyzer::splitState(const CFGBlock *CurrBlock, void ConsumedAnalyzer::run(AnalysisDeclContext &AC) { const FunctionDecl *D = dyn_cast_or_null<FunctionDecl>(AC.getDecl()); + if (!D) + return; - if (!D) return; + CFG *CFGraph = AC.getCFG(); + if (!CFGraph) + return; determineExpectedReturnState(AC, D); - BlockInfo = ConsumedBlockInfo(AC.getCFG()); + BlockInfo = ConsumedBlockInfo(CFGraph); PostOrderCFGView *SortedGraph = AC.getAnalysis<PostOrderCFGView>(); |

