зеркало из https://github.com/microsoft/clang-1.git
36 строки
1.1 KiB
C++
36 строки
1.1 KiB
C++
//== AnalysisManager.cpp - Path sensitive analysis data manager ----*- C++ -*-//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
//
|
|
// This file implements the AnalysisManager class.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#include "clang/Analysis/PathSensitive/AnalysisManager.h"
|
|
#include "clang/Basic/SourceManager.h"
|
|
|
|
using namespace clang;
|
|
|
|
void AnalysisManager::DisplayFunction(Decl *D) {
|
|
|
|
if (DisplayedFunction)
|
|
return;
|
|
|
|
DisplayedFunction = true;
|
|
|
|
// FIXME: Is getCodeDecl() always a named decl?
|
|
if (isa<FunctionDecl>(D) || isa<ObjCMethodDecl>(D)) {
|
|
const NamedDecl *ND = cast<NamedDecl>(D);
|
|
SourceManager &SM = getASTContext().getSourceManager();
|
|
llvm::errs() << "ANALYZE: "
|
|
<< SM.getPresumedLoc(ND->getLocation()).getFilename()
|
|
<< ' ' << ND->getNameAsString() << '\n';
|
|
}
|
|
}
|
|
|