diff options
Diffstat (limited to 'clang/lib')
-rw-r--r-- | clang/lib/AST/Decl.cpp | 10 | ||||
-rw-r--r-- | clang/lib/Analysis/PathDiagnostic.cpp | 2 | ||||
-rw-r--r-- | clang/lib/Frontend/ASTConsumers.cpp | 4 |
3 files changed, 3 insertions, 13 deletions
diff --git a/clang/lib/AST/Decl.cpp b/clang/lib/AST/Decl.cpp index a7d8216b005..66f20364a64 100644 --- a/clang/lib/AST/Decl.cpp +++ b/clang/lib/AST/Decl.cpp @@ -438,16 +438,6 @@ Stmt *FunctionDecl::getBody(const FunctionDecl *&Definition) const { return 0; } -Stmt *FunctionDecl::getBodyIfAvailable() const { - for (redecl_iterator I = redecls_begin(), E = redecls_end(); I != E; ++I) { - if (I->Body && !I->Body.isOffset()) { - return I->Body.get(0); - } - } - - return 0; -} - void FunctionDecl::setBody(Stmt *B) { Body = B; if (B) diff --git a/clang/lib/Analysis/PathDiagnostic.cpp b/clang/lib/Analysis/PathDiagnostic.cpp index 1c2f6bfca04..ceead6a3ac2 100644 --- a/clang/lib/Analysis/PathDiagnostic.cpp +++ b/clang/lib/Analysis/PathDiagnostic.cpp @@ -207,7 +207,7 @@ PathDiagnosticRange PathDiagnosticLocation::asRange() const { // FIXME: We would like to always get the function body, even // when it needs to be de-serialized, but getting the // ASTContext here requires significant changes. - if (Stmt *Body = FD->getBodyIfAvailable()) { + if (Stmt *Body = FD->getBody()) { if (CompoundStmt *CS = dyn_cast<CompoundStmt>(Body)) return CS->getSourceRange(); else diff --git a/clang/lib/Frontend/ASTConsumers.cpp b/clang/lib/Frontend/ASTConsumers.cpp index 954ebd69973..3abd2b36e66 100644 --- a/clang/lib/Frontend/ASTConsumers.cpp +++ b/clang/lib/Frontend/ASTConsumers.cpp @@ -115,9 +115,9 @@ void ASTViewer::HandleTopLevelSingleDecl(Decl *D) { if (FunctionDecl *FD = dyn_cast<FunctionDecl>(D)) { FD->print(llvm::errs()); - if (FD->getBodyIfAvailable()) { + if (Stmt *Body = FD->getBody()) { llvm::errs() << '\n'; - FD->getBodyIfAvailable()->viewAST(); + Body->viewAST(); llvm::errs() << '\n'; } return; |