aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-09-03 05:59:50 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-09-03 05:59:50 +0000
commitbce6f62ae7d2c15992617f64e30067803fb5b47f (patch)
tree494ab2f9a3a923b93055f0710be6ce4e9efbf169
parentcc318939daaa50fc07f7d431caec3c8679893e9c (diff)
Revert "Visit function/method bodies and issue callback for parameters and local
variables.", this is breaking x86_64-apple-darwin10 and Linux tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80896 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/clang-c/Index.h2
-rw-r--r--include/clang/Frontend/ASTUnit.h4
-rw-r--r--lib/Frontend/ASTUnit.cpp6
-rw-r--r--tools/CIndex/CIndex.cpp25
-rw-r--r--tools/CIndex/CIndex.exports1
-rw-r--r--tools/c-index-test/c-index-test.c26
6 files changed, 14 insertions, 50 deletions
diff --git a/include/clang-c/Index.h b/include/clang-c/Index.h
index f85c9d4160..9efa791e89 100644
--- a/include/clang-c/Index.h
+++ b/include/clang-c/Index.h
@@ -95,8 +95,6 @@ CXTranslationUnit clang_createTranslationUnit(
CXIndex, const char *ast_filename
);
-const char *clang_getTranslationUnitSpelling(CXTranslationUnit CTUnit);
-
/*
Usage: clang_loadTranslationUnit(). Will load the toplevel declarations
within a translation unit, issuing a 'callback' for each one.
diff --git a/include/clang/Frontend/ASTUnit.h b/include/clang/Frontend/ASTUnit.h
index deb4436152..5eb7f494d7 100644
--- a/include/clang/Frontend/ASTUnit.h
+++ b/include/clang/Frontend/ASTUnit.h
@@ -28,7 +28,6 @@ namespace clang {
class Preprocessor;
class ASTContext;
class Decl;
- class PCHReader;
/// \brief Utility class for loading a ASTContext from a PCH file.
///
@@ -40,7 +39,6 @@ class ASTUnit {
llvm::OwningPtr<TargetInfo> Target;
llvm::OwningPtr<Preprocessor> PP;
llvm::OwningPtr<ASTContext> Ctx;
- llvm::OwningPtr<PCHReader> Reader;
ASTUnit(const ASTUnit&); // do not implement
ASTUnit &operator=(const ASTUnit &); // do not implement
@@ -61,8 +59,6 @@ public:
const Diagnostic &getDiagnostic() const { return *Diags.get(); }
Diagnostic &getDiagnostic() { return *Diags.get(); }
- const std::string &getOriginalSourceFileName();
-
/// \brief Create a ASTUnit from a PCH file.
///
/// \param Filename PCH filename
diff --git a/lib/Frontend/ASTUnit.cpp b/lib/Frontend/ASTUnit.cpp
index 38452ed9d4..8143263ca2 100644
--- a/lib/Frontend/ASTUnit.cpp
+++ b/lib/Frontend/ASTUnit.cpp
@@ -77,9 +77,6 @@ public:
} // anonymous namespace
-const std::string &ASTUnit::getOriginalSourceFileName() {
- return Reader->getOriginalSourceFile();
-}
ASTUnit *ASTUnit::LoadFromPCHFile(const std::string &Filename,
FileManager &FileMgr,
@@ -104,11 +101,10 @@ ASTUnit *ASTUnit::LoadFromPCHFile(const std::string &Filename,
std::string Predefines;
unsigned Counter;
- llvm::OwningPtr<PCHReader> Reader;
+ llvm::OwningPtr<PCHReader> Reader;
llvm::OwningPtr<ExternalASTSource> Source;
Reader.reset(new PCHReader(SourceMgr, FileMgr, Diags));
- AST->Reader.reset(Reader.get());
Reader->setListener(new PCHInfoCollector(LangInfo, HeaderInfo, TargetTriple,
Predefines, Counter));
diff --git a/tools/CIndex/CIndex.cpp b/tools/CIndex/CIndex.cpp
index a0b49c4169..82f7fb8e2b 100644
--- a/tools/CIndex/CIndex.cpp
+++ b/tools/CIndex/CIndex.cpp
@@ -67,9 +67,6 @@ public:
break;
}
}
- void VisitVarDecl(VarDecl *ND) {
- Call(CXCursor_VarDecl, ND);
- }
void VisitFunctionDecl(FunctionDecl *ND) {
Call(ND->isThisDeclarationADefinition() ? CXCursor_FunctionDefn
: CXCursor_FunctionDecl, ND);
@@ -98,9 +95,6 @@ class CDeclVisitor : public DeclVisitor<CDeclVisitor> {
CXClientData CData;
void Call(enum CXCursorKind CK, NamedDecl *ND) {
- // Disable the callback when the context is equal to the visiting decl.
- if (CDecl == ND)
- return;
CXCursor C = { CK, ND };
Callback(CDecl, C, CData);
}
@@ -135,28 +129,17 @@ public:
void VisitFieldDecl(FieldDecl *ND) {
Call(CXCursor_FieldDecl, ND);
}
- void VisitVarDecl(VarDecl *ND) {
- Call(CXCursor_VarDecl, ND);
- }
- void VisitParmVarDecl(ParmVarDecl *ND) {
- Call(CXCursor_ParmDecl, ND);
- }
void VisitObjCPropertyDecl(ObjCPropertyDecl *ND) {
Call(CXCursor_ObjCPropertyDecl, ND);
}
void VisitObjCIvarDecl(ObjCIvarDecl *ND) {
Call(CXCursor_ObjCIvarDecl, ND);
}
- void VisitFunctionDecl(FunctionDecl *ND) {
- if (ND->isThisDeclarationADefinition()) {
- VisitDeclContext(dyn_cast<DeclContext>(ND));
- }
- }
void VisitObjCMethodDecl(ObjCMethodDecl *ND) {
if (ND->getBody()) {
Call(ND->isInstanceMethod() ? CXCursor_ObjCInstanceMethodDefn
: CXCursor_ObjCClassMethodDefn, ND);
- VisitDeclContext(dyn_cast<DeclContext>(ND));
+ // FIXME: load body.
} else
Call(ND->isInstanceMethod() ? CXCursor_ObjCInstanceMethodDecl
: CXCursor_ObjCClassMethodDecl, ND);
@@ -184,12 +167,6 @@ CXTranslationUnit clang_createTranslationUnit(
return ASTUnit::LoadFromPCHFile(astName, CXXIdx->getFileManager(), &ErrMsg);
}
-const char *clang_getTranslationUnitSpelling(CXTranslationUnit CTUnit)
-{
- assert(CTUnit && "Passed null CXTranslationUnit");
- ASTUnit *CXXUnit = static_cast<ASTUnit *>(CTUnit);
- return CXXUnit->getOriginalSourceFileName().c_str();
-}
void clang_loadTranslationUnit(CXTranslationUnit CTUnit,
CXTranslationUnitIterator callback,
diff --git a/tools/CIndex/CIndex.exports b/tools/CIndex/CIndex.exports
index 7c9660b4d0..3f87a82b3a 100644
--- a/tools/CIndex/CIndex.exports
+++ b/tools/CIndex/CIndex.exports
@@ -19,4 +19,3 @@ _clang_isReference
_clang_isDefinition
_clang_getCursorSpelling
_clang_getCursorKindSpelling
-_clang_getTranslationUnitSpelling
diff --git a/tools/c-index-test/c-index-test.c b/tools/c-index-test/c-index-test.c
index 8df2fc261d..2d2be158d0 100644
--- a/tools/c-index-test/c-index-test.c
+++ b/tools/c-index-test/c-index-test.c
@@ -3,27 +3,25 @@
#include "clang-c/Index.h"
#include <stdio.h>
-static void PrintCursor(CXCursor Cursor) {
- printf("%s => %s", clang_getCursorKindSpelling(Cursor.kind),
- clang_getCursorSpelling(Cursor));
- printf(" (%s,%d:%d)\n", clang_getCursorSource(Cursor),
- clang_getCursorLine(Cursor),
- clang_getCursorColumn(Cursor));
-}
-
static void DeclVisitor(CXDecl Dcl, CXCursor Cursor, CXClientData Filter)
{
- printf("%s: ", clang_getDeclSpelling(Dcl));
- if (!Filter || (Cursor.kind == *(enum CXCursorKind *)Filter))
- PrintCursor(Cursor);
+ if (!Filter || (Cursor.kind == *(enum CXCursorKind *)Filter)) {
+ printf("%s => %s", clang_getCursorKindSpelling(Cursor.kind),
+ clang_getCursorSpelling(Cursor));
+ printf(" (%s,%d:%d)\n", clang_getCursorSource(Cursor),
+ clang_getCursorLine(Cursor),
+ clang_getCursorColumn(Cursor));
+ }
}
-
static void TranslationUnitVisitor(CXTranslationUnit Unit, CXCursor Cursor,
CXClientData Filter)
{
- printf("%s: ", clang_getTranslationUnitSpelling(Unit));
if (!Filter || (Cursor.kind == *(enum CXCursorKind *)Filter)) {
- PrintCursor(Cursor);
+ printf("%s => %s", clang_getCursorKindSpelling(Cursor.kind),
+ clang_getCursorSpelling(Cursor));
+ printf(" (%s,%d:%d)\n", clang_getCursorSource(Cursor),
+ clang_getCursorLine(Cursor),
+ clang_getCursorColumn(Cursor));
clang_loadDeclaration(Cursor.decl, DeclVisitor, 0);
}