diff options
Diffstat (limited to 'lib/Analysis/AnalysisContext.cpp')
| -rw-r--r-- | lib/Analysis/AnalysisContext.cpp | 4 | 
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Analysis/AnalysisContext.cpp b/lib/Analysis/AnalysisContext.cpp index 97e6d914d450..2093b5e23e85 100644 --- a/lib/Analysis/AnalysisContext.cpp +++ b/lib/Analysis/AnalysisContext.cpp @@ -18,6 +18,7 @@  #include "clang/Analysis/CFG.h"  #include "clang/AST/Decl.h"  #include "clang/AST/DeclObjC.h" +#include "clang/AST/DeclTemplate.h"  #include "clang/AST/ParentMap.h"  #include "clang/AST/StmtVisitor.h"  #include "clang/Analysis/Support/BumpVector.h" @@ -38,6 +39,9 @@ Stmt *AnalysisContext::getBody() {      return MD->getBody();    else if (const BlockDecl *BD = dyn_cast<BlockDecl>(D))      return BD->getBody(); +  else if (const FunctionTemplateDecl *FunTmpl +           = dyn_cast_or_null<FunctionTemplateDecl>(D)) +    return FunTmpl->getTemplatedDecl()->getBody();    llvm_unreachable("unknown code decl");  }  | 
