forked from OSchip/llvm-project
Remove DiagnosticConsumer::clone(), a bad idea that is now unused.
llvm-svn: 181070
This commit is contained in:
parent
5fe0e7b2f6
commit
30071cead9
|
@ -1301,10 +1301,6 @@ public:
|
|||
/// warnings and errors.
|
||||
virtual void HandleDiagnostic(DiagnosticsEngine::Level DiagLevel,
|
||||
const Diagnostic &Info);
|
||||
|
||||
/// \brief Clone the diagnostic consumer, producing an equivalent consumer
|
||||
/// that can be used in a different context.
|
||||
virtual DiagnosticConsumer *clone(DiagnosticsEngine &Diags) const = 0;
|
||||
};
|
||||
|
||||
/// \brief A diagnostic client that ignores all diagnostics.
|
||||
|
@ -1314,9 +1310,6 @@ class IgnoringDiagConsumer : public DiagnosticConsumer {
|
|||
const Diagnostic &Info) {
|
||||
// Just ignore it.
|
||||
}
|
||||
DiagnosticConsumer *clone(DiagnosticsEngine &Diags) const {
|
||||
return new IgnoringDiagConsumer();
|
||||
}
|
||||
};
|
||||
|
||||
/// \brief Diagnostic consumer that forwards diagnostics along to an
|
||||
|
@ -1335,8 +1328,6 @@ public:
|
|||
virtual void clear();
|
||||
|
||||
virtual bool IncludeInDiagnosticCounts() const;
|
||||
|
||||
virtual DiagnosticConsumer *clone(DiagnosticsEngine &Diags) const;
|
||||
};
|
||||
|
||||
// Struct used for sending info about how a type should be printed.
|
||||
|
|
|
@ -60,12 +60,6 @@ public:
|
|||
Primary->HandleDiagnostic(DiagLevel, Info);
|
||||
Secondary->HandleDiagnostic(DiagLevel, Info);
|
||||
}
|
||||
|
||||
DiagnosticConsumer *clone(DiagnosticsEngine &Diags) const {
|
||||
return new ChainedDiagnosticConsumer(Primary->clone(Diags),
|
||||
Secondary->clone(Diags));
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
} // end namspace clang
|
||||
|
|
|
@ -493,12 +493,8 @@ public:
|
|||
///
|
||||
/// \param ShouldOwnClient If Client is non-NULL, specifies whether
|
||||
/// the diagnostic object should take ownership of the client.
|
||||
///
|
||||
/// \param ShouldCloneClient If Client is non-NULL, specifies whether that
|
||||
/// client should be cloned.
|
||||
void createDiagnostics(DiagnosticConsumer *Client = 0,
|
||||
bool ShouldOwnClient = true,
|
||||
bool ShouldCloneClient = true);
|
||||
bool ShouldOwnClient = true);
|
||||
|
||||
/// Create a DiagnosticsEngine object with a the TextDiagnosticPrinter.
|
||||
///
|
||||
|
@ -522,7 +518,6 @@ public:
|
|||
createDiagnostics(DiagnosticOptions *Opts,
|
||||
DiagnosticConsumer *Client = 0,
|
||||
bool ShouldOwnClient = true,
|
||||
bool ShouldCloneClient = true,
|
||||
const CodeGenOptions *CodeGenOpts = 0);
|
||||
|
||||
/// Create the file manager and replace any existing one with it.
|
||||
|
|
|
@ -70,8 +70,6 @@ public:
|
|||
|
||||
virtual void HandleDiagnostic(DiagnosticsEngine::Level DiagLevel,
|
||||
const Diagnostic &Info);
|
||||
|
||||
DiagnosticConsumer *clone(DiagnosticsEngine &Diags) const;
|
||||
};
|
||||
|
||||
} // end namespace clang
|
||||
|
|
|
@ -45,8 +45,6 @@ public:
|
|||
/// FlushDiagnostics - Flush the buffered diagnostics to an given
|
||||
/// diagnostic engine.
|
||||
void FlushDiagnostics(DiagnosticsEngine &Diags) const;
|
||||
|
||||
virtual DiagnosticConsumer *clone(DiagnosticsEngine &Diags) const;
|
||||
};
|
||||
|
||||
} // end namspace clang
|
||||
|
|
|
@ -50,7 +50,6 @@ public:
|
|||
void BeginSourceFile(const LangOptions &LO, const Preprocessor *PP);
|
||||
void EndSourceFile();
|
||||
void HandleDiagnostic(DiagnosticsEngine::Level Level, const Diagnostic &Info);
|
||||
DiagnosticConsumer *clone(DiagnosticsEngine &Diags) const;
|
||||
};
|
||||
|
||||
} // end namespace clang
|
||||
|
|
|
@ -266,8 +266,6 @@ public:
|
|||
|
||||
virtual void HandleDiagnostic(DiagnosticsEngine::Level DiagLevel,
|
||||
const Diagnostic &Info);
|
||||
|
||||
virtual DiagnosticConsumer *clone(DiagnosticsEngine &Diags) const;
|
||||
};
|
||||
|
||||
} // end namspace clang
|
||||
|
|
|
@ -121,8 +121,6 @@ public:
|
|||
|
||||
/// \brief Emit a diagnostic via the adapted diagnostic client.
|
||||
void Diag(SourceLocation Loc, unsigned DiagID);
|
||||
|
||||
DiagnosticConsumer *clone(DiagnosticsEngine &Diags) const;
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -140,12 +140,6 @@ public:
|
|||
// Non-ARC warnings are ignored.
|
||||
Diags.setLastDiagnosticIgnored();
|
||||
}
|
||||
|
||||
DiagnosticConsumer *clone(DiagnosticsEngine &Diags) const {
|
||||
// Just drop any diagnostics that come from cloned consumers; they'll
|
||||
// have different source managers anyway.
|
||||
return new IgnoringDiagConsumer();
|
||||
}
|
||||
};
|
||||
|
||||
} // end anonymous namespace
|
||||
|
|
|
@ -989,11 +989,6 @@ bool ForwardingDiagnosticConsumer::IncludeInDiagnosticCounts() const {
|
|||
return Target.IncludeInDiagnosticCounts();
|
||||
}
|
||||
|
||||
DiagnosticConsumer *
|
||||
ForwardingDiagnosticConsumer::clone(DiagnosticsEngine &Diags) const {
|
||||
return new ForwardingDiagnosticConsumer(Target);
|
||||
}
|
||||
|
||||
PartialDiagnostic::StorageAllocator::StorageAllocator() {
|
||||
for (unsigned I = 0; I != NumCached; ++I)
|
||||
FreeList[I] = Cached + I;
|
||||
|
|
|
@ -604,15 +604,6 @@ public:
|
|||
|
||||
virtual void HandleDiagnostic(DiagnosticsEngine::Level Level,
|
||||
const Diagnostic &Info);
|
||||
|
||||
DiagnosticConsumer *clone(DiagnosticsEngine &Diags) const {
|
||||
// Just drop any diagnostics that come from cloned consumers; they'll
|
||||
// have different source managers anyway.
|
||||
// FIXME: We'd like to be able to capture these somehow, even if it's just
|
||||
// file/line/column, because they could occur when parsing module maps or
|
||||
// building modules on-demand.
|
||||
return new IgnoringDiagConsumer();
|
||||
}
|
||||
};
|
||||
|
||||
/// \brief RAII object that optionally captures diagnostics, if
|
||||
|
@ -679,8 +670,7 @@ void ASTUnit::ConfigureDiags(IntrusiveRefCntPtr<DiagnosticsEngine> &Diags,
|
|||
Client = new StoredDiagnosticConsumer(AST.StoredDiagnostics);
|
||||
Diags = CompilerInstance::createDiagnostics(new DiagnosticOptions(),
|
||||
Client,
|
||||
/*ShouldOwnClient=*/true,
|
||||
/*ShouldCloneClient=*/false);
|
||||
/*ShouldOwnClient=*/true);
|
||||
} else if (CaptureDiagnostics) {
|
||||
Diags->setClient(new StoredDiagnosticConsumer(AST.StoredDiagnostics));
|
||||
}
|
||||
|
|
|
@ -155,18 +155,15 @@ static void SetupSerializedDiagnostics(DiagnosticOptions *DiagOpts,
|
|||
}
|
||||
|
||||
void CompilerInstance::createDiagnostics(DiagnosticConsumer *Client,
|
||||
bool ShouldOwnClient,
|
||||
bool ShouldCloneClient) {
|
||||
bool ShouldOwnClient) {
|
||||
Diagnostics = createDiagnostics(&getDiagnosticOpts(), Client,
|
||||
ShouldOwnClient, ShouldCloneClient,
|
||||
&getCodeGenOpts());
|
||||
ShouldOwnClient, &getCodeGenOpts());
|
||||
}
|
||||
|
||||
IntrusiveRefCntPtr<DiagnosticsEngine>
|
||||
CompilerInstance::createDiagnostics(DiagnosticOptions *Opts,
|
||||
DiagnosticConsumer *Client,
|
||||
bool ShouldOwnClient,
|
||||
bool ShouldCloneClient,
|
||||
const CodeGenOptions *CodeGenOpts) {
|
||||
IntrusiveRefCntPtr<DiagnosticIDs> DiagID(new DiagnosticIDs());
|
||||
IntrusiveRefCntPtr<DiagnosticsEngine>
|
||||
|
@ -175,10 +172,7 @@ CompilerInstance::createDiagnostics(DiagnosticOptions *Opts,
|
|||
// Create the diagnostic client for reporting errors or for
|
||||
// implementing -verify.
|
||||
if (Client) {
|
||||
if (ShouldCloneClient)
|
||||
Diags->setClient(Client->clone(*Diags), ShouldOwnClient);
|
||||
else
|
||||
Diags->setClient(Client, ShouldOwnClient);
|
||||
Diags->setClient(Client, ShouldOwnClient);
|
||||
} else
|
||||
Diags->setClient(new TextDiagnosticPrinter(llvm::errs(), Opts));
|
||||
|
||||
|
@ -871,8 +865,7 @@ static void compileModule(CompilerInstance &ImportingInstance,
|
|||
|
||||
Instance.createDiagnostics(new ForwardingDiagnosticConsumer(
|
||||
ImportingInstance.getDiagnosticClient()),
|
||||
/*ShouldOwnClient=*/true,
|
||||
/*ShouldCloneClient=*/false);
|
||||
/*ShouldOwnClient=*/true);
|
||||
|
||||
// Note that this module is part of the module build stack, so that we
|
||||
// can detect cycles in the module graph.
|
||||
|
|
|
@ -171,8 +171,3 @@ void LogDiagnosticPrinter::HandleDiagnostic(DiagnosticsEngine::Level Level,
|
|||
Entries.push_back(DE);
|
||||
}
|
||||
|
||||
DiagnosticConsumer *
|
||||
LogDiagnosticPrinter::clone(DiagnosticsEngine &Diags) const {
|
||||
return new LogDiagnosticPrinter(OS, &*DiagOpts, /*OwnsOutputStream=*/false);
|
||||
}
|
||||
|
||||
|
|
|
@ -114,10 +114,6 @@ public:
|
|||
|
||||
virtual void finish();
|
||||
|
||||
DiagnosticConsumer *clone(DiagnosticsEngine &Diags) const {
|
||||
return new SDiagsWriter(State);
|
||||
}
|
||||
|
||||
private:
|
||||
/// \brief Emit the preamble for the serialized diagnostics.
|
||||
void EmitPreamble();
|
||||
|
|
|
@ -75,6 +75,3 @@ void TextDiagnosticBuffer::FlushDiagnostics(DiagnosticsEngine &Diags) const {
|
|||
escapeDiag(it->second, Buf)));
|
||||
}
|
||||
|
||||
DiagnosticConsumer *TextDiagnosticBuffer::clone(DiagnosticsEngine &) const {
|
||||
return new TextDiagnosticBuffer();
|
||||
}
|
||||
|
|
|
@ -155,8 +155,3 @@ void TextDiagnosticPrinter::HandleDiagnostic(DiagnosticsEngine::Level Level,
|
|||
|
||||
OS.flush();
|
||||
}
|
||||
|
||||
DiagnosticConsumer *
|
||||
TextDiagnosticPrinter::clone(DiagnosticsEngine &Diags) const {
|
||||
return new TextDiagnosticPrinter(OS, &*DiagOpts, /*OwnsOutputStream=*/false);
|
||||
}
|
||||
|
|
|
@ -820,14 +820,6 @@ void VerifyDiagnosticConsumer::CheckDiagnostics() {
|
|||
ED.Notes.clear();
|
||||
}
|
||||
|
||||
DiagnosticConsumer *
|
||||
VerifyDiagnosticConsumer::clone(DiagnosticsEngine &Diags) const {
|
||||
if (!Diags.getClient())
|
||||
Diags.setClient(PrimaryClient->clone(Diags));
|
||||
|
||||
return new VerifyDiagnosticConsumer(Diags);
|
||||
}
|
||||
|
||||
Directive *Directive::create(bool RegexKind, SourceLocation DirectiveLoc,
|
||||
SourceLocation DiagnosticLoc, StringRef Text,
|
||||
unsigned Min, unsigned Max) {
|
||||
|
|
|
@ -197,9 +197,4 @@ void FixItRewriter::Diag(SourceLocation Loc, unsigned DiagID) {
|
|||
Diags.setClient(this);
|
||||
}
|
||||
|
||||
DiagnosticConsumer *FixItRewriter::clone(DiagnosticsEngine &Diags) const {
|
||||
return new FixItRewriter(Diags, Diags.getSourceManager(),
|
||||
Rewrite.getLangOpts(), FixItOpts);
|
||||
}
|
||||
|
||||
FixItOptions::~FixItOptions() {}
|
||||
|
|
|
@ -398,10 +398,6 @@ public:
|
|||
if (level >= DiagnosticsEngine::Error)
|
||||
Errors.push_back(StoredDiagnostic(level, Info));
|
||||
}
|
||||
|
||||
DiagnosticConsumer *clone(DiagnosticsEngine &Diags) const {
|
||||
return new IgnoringDiagConsumer();
|
||||
}
|
||||
};
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
@ -549,8 +545,7 @@ static void clang_indexSourceFile_Impl(void *UserData) {
|
|||
IntrusiveRefCntPtr<DiagnosticsEngine>
|
||||
Diags(CompilerInstance::createDiagnostics(new DiagnosticOptions,
|
||||
CaptureDiag,
|
||||
/*ShouldOwnClient=*/true,
|
||||
/*ShouldCloneClient=*/false));
|
||||
/*ShouldOwnClient=*/true));
|
||||
|
||||
// Recover resources if we crash before exiting this function.
|
||||
llvm::CrashRecoveryContextCleanupRegistrar<DiagnosticsEngine,
|
||||
|
|
Loading…
Reference in New Issue