[Preprocessor] Remove PPMutationListener.

It's not used anymore.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178106 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Argyrios Kyrtzidis 2013-03-27 01:25:24 +00:00
Родитель 35803282ef
Коммит d560ce3b66
11 изменённых файлов: 2 добавлений и 95 удалений

Просмотреть файл

@ -20,7 +20,6 @@ namespace clang {
class Decl;
class DeclGroupRef;
class HandleTagDeclDefinition;
class PPMutationListener;
class ASTMutationListener;
class ASTDeserializationListener; // layering violation because void* is ugly
class SemaConsumer; // layering violation required for safe SemaConsumer
@ -113,11 +112,6 @@ public:
/// it was actually used.
virtual void HandleVTable(CXXRecordDecl *RD, bool DefinitionRequired) {}
/// \brief If the consumer is interested in preprocessor entities getting
/// modified after their initial creation, it should return a pointer to
/// a PPMutationListener here.
virtual PPMutationListener *GetPPMutationListener() { return 0; }
/// \brief If the consumer is interested in entities getting modified after
/// their initial creation, it should return a pointer to
/// an ASTMutationListener here.

Просмотреть файл

@ -1,43 +0,0 @@
//===--- PPMutationListener.h - Preprocessor Mutation Interface -*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// This file defines the PPMutationListener interface.
//
//===----------------------------------------------------------------------===//
#ifndef LLVM_CLANG_LEX_PPTMUTATIONLISTENER_H
#define LLVM_CLANG_LEX_PPTMUTATIONLISTENER_H
#include "clang/Basic/SourceLocation.h"
namespace clang {
class MacroDirective;
/// \brief A record that describes an update to a macro that was
/// originally loaded to an AST file and has been modified within the
/// current translation unit.
struct MacroUpdate {
/// \brief The source location at which this macro was #undef'd.
SourceLocation UndefLoc;
};
/// \brief An abstract interface that should be implemented by
/// listeners that want to be notified when a preprocessor entity gets
/// modified after its initial creation.
class PPMutationListener {
public:
virtual ~PPMutationListener();
/// \brief A macro has been #undef'd.
virtual void UndefinedMacro(MacroDirective *MD) { }
};
} // end namespace clang
#endif

Просмотреть файл

@ -21,7 +21,6 @@
#include "clang/Lex/Lexer.h"
#include "clang/Lex/MacroInfo.h"
#include "clang/Lex/PPCallbacks.h"
#include "clang/Lex/PPMutationListener.h"
#include "clang/Lex/PTHLexer.h"
#include "clang/Lex/PTHManager.h"
#include "clang/Lex/TokenLexer.h"
@ -296,11 +295,6 @@ class Preprocessor : public RefCountedBase<Preprocessor> {
/// encountered (e.g. a file is \#included, etc).
PPCallbacks *Callbacks;
/// \brief Listener whose actions are invoked when an entity in the
/// preprocessor (e.g., a macro) that was loaded from an AST file is
/// later mutated.
PPMutationListener *Listener;
struct MacroExpandsInfo {
Token Tok;
MacroDirective *MD;
@ -519,19 +513,6 @@ public:
Callbacks = C;
}
/// \brief Attach an preprocessor mutation listener to the preprocessor.
///
/// The preprocessor mutation listener provides the ability to track
/// modifications to the preprocessor entities committed after they were
/// initially created.
void setPPMutationListener(PPMutationListener *Listener) {
this->Listener = Listener;
}
/// \brief Retrieve a pointer to the preprocessor mutation listener
/// associated with this preprocessor, if any.
PPMutationListener *getPPMutationListener() const { return Listener; }
/// \brief Given an identifier, return its latest MacroDirective if it is
// \#defined or null if it isn't \#define'd.
MacroDirective *getMacroDirective(IdentifierInfo *II) const {

Просмотреть файл

@ -24,7 +24,6 @@
#include "clang/Basic/SourceManager.h"
#include "clang/Lex/ExternalPreprocessorSource.h"
#include "clang/Lex/HeaderSearch.h"
#include "clang/Lex/PPMutationListener.h"
#include "clang/Lex/PreprocessingRecord.h"
#include "clang/Sema/ExternalSemaSource.h"
#include "clang/Serialization/ASTBitCodes.h"
@ -440,15 +439,6 @@ private:
/// global macro ID to produce a local ID.
GlobalMacroMapType GlobalMacroMap;
typedef llvm::DenseMap<serialization::MacroID,
SmallVector<std::pair<serialization::SubmoduleID,
MacroUpdate>, 1> >
MacroUpdatesMap;
/// \brief Mapping from (global) macro IDs to the set of updates to be
/// performed to the corresponding macro.
MacroUpdatesMap MacroUpdates;
/// \brief A vector containing submodules that have already been loaded.
///
/// This vector is indexed by the Submodule ID (-1). NULL submodule entries

Просмотреть файл

@ -18,7 +18,6 @@
#include "clang/AST/Decl.h"
#include "clang/AST/DeclarationName.h"
#include "clang/AST/TemplateBase.h"
#include "clang/Lex/PPMutationListener.h"
#include "clang/Sema/SemaConsumer.h"
#include "clang/Serialization/ASTBitCodes.h"
#include "clang/Serialization/ASTDeserializationListener.h"
@ -76,7 +75,6 @@ namespace SrcMgr { class SLocEntry; }
/// data structures. This bitstream can be de-serialized via an
/// instance of the ASTReader class.
class ASTWriter : public ASTDeserializationListener,
public PPMutationListener,
public ASTMutationListener {
public:
typedef SmallVector<uint64_t, 64> RecordData;
@ -755,7 +753,6 @@ public:
~PCHGenerator();
virtual void InitializeSema(Sema &S) { SemaPtr = &S; }
virtual void HandleTranslationUnit(ASTContext &Ctx);
virtual PPMutationListener *GetPPMutationListener();
virtual ASTMutationListener *GetASTMutationListener();
virtual ASTDeserializationListener *GetASTDeserializationListener();
};

Просмотреть файл

@ -113,8 +113,6 @@ ChainedIncludesSource *ChainedIncludesSource::create(CompilerInstance &CI) {
OwningPtr<ASTConsumer> consumer;
consumer.reset(new PCHGenerator(Clang->getPreprocessor(), "-", 0,
/*isysroot=*/"", &OS));
Clang->getPreprocessor().setPPMutationListener(
consumer->GetPPMutationListener());
Clang->getASTContext().setASTMutationListener(
consumer->GetASTMutationListener());
Clang->setASTConsumer(consumer.take());

Просмотреть файл

@ -1158,8 +1158,6 @@ CompilerInstance::loadModule(SourceLocation ImportLoc,
getASTConsumer().GetASTDeserializationListener());
getASTContext().setASTMutationListener(
getASTConsumer().GetASTMutationListener());
getPreprocessor().setPPMutationListener(
getASTConsumer().GetPPMutationListener());
}
OwningPtr<ExternalASTSource> Source;
Source.reset(ModuleManager);

Просмотреть файл

@ -287,8 +287,6 @@ bool FrontendAction::BeginSourceFile(CompilerInstance &CI,
goto failure;
CI.getASTContext().setASTMutationListener(Consumer->GetASTMutationListener());
CI.getPreprocessor().setPPMutationListener(
Consumer->GetPPMutationListener());
if (!CI.getPreprocessorOpts().ChainedIncludes.empty()) {
// Convert headers to PCH and chain them.

Просмотреть файл

@ -54,8 +54,6 @@ using namespace clang;
//===----------------------------------------------------------------------===//
ExternalPreprocessorSource::~ExternalPreprocessorSource() { }
PPMutationListener::~PPMutationListener() { }
Preprocessor::Preprocessor(IntrusiveRefCntPtr<PreprocessorOptions> PPOpts,
DiagnosticsEngine &diags, LangOptions &opts,
const TargetInfo *target, SourceManager &SM,
@ -68,7 +66,7 @@ Preprocessor::Preprocessor(IntrusiveRefCntPtr<PreprocessorOptions> PPOpts,
Identifiers(opts, IILookup), IncrementalProcessing(IncrProcessing),
CodeComplete(0), CodeCompletionFile(0), CodeCompletionOffset(0),
CodeCompletionReached(0), SkipMainFilePreamble(0, true), CurPPLexer(0),
CurDirLookup(0), CurLexerKind(CLK_Lexer), Callbacks(0), Listener(0),
CurDirLookup(0), CurLexerKind(CLK_Lexer), Callbacks(0),
MacroArgCache(0), Record(0), MIChainHead(0), MICache(0) {
OwnsHeaderSearch = OwnsHeaders;

Просмотреть файл

@ -2740,7 +2740,7 @@ void ASTReader::makeNamesVisible(const HiddenNames &Names) {
}
case HiddenName::MacroUndef: {
// FIXME: Remove HiddenName::MacroUndef and PPMutationListener.
// FIXME: Remove HiddenName::MacroUndef.
break;
}
}

Просмотреть файл

@ -55,10 +55,6 @@ void PCHGenerator::HandleTranslationUnit(ASTContext &Ctx) {
Buffer.clear();
}
PPMutationListener *PCHGenerator::GetPPMutationListener() {
return &Writer;
}
ASTMutationListener *PCHGenerator::GetASTMutationListener() {
return &Writer;
}