make Preprocessor::Diags be a pointer instead of a reference.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66955 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/clang/Lex/Preprocessor.h b/include/clang/Lex/Preprocessor.h
index 4f5def5..28aad1a 100644
--- a/include/clang/Lex/Preprocessor.h
+++ b/include/clang/Lex/Preprocessor.h
@@ -45,7 +45,7 @@
/// like the #include stack, token expansion, etc.
///
class Preprocessor {
- Diagnostic &Diags;
+ Diagnostic *Diags;
const LangOptions &Features;
TargetInfo &Target;
FileManager &FileMgr;
@@ -196,7 +196,7 @@
~Preprocessor();
- Diagnostic &getDiagnostics() const { return Diags; }
+ Diagnostic &getDiagnostics() const { return *Diags; }
const LangOptions &getLangOptions() const { return Features; }
TargetInfo &getTargetInfo() const { return Target; }
FileManager &getFileManager() const { return FileMgr; }
@@ -452,12 +452,12 @@
/// the specified Token's location, translating the token's start
/// position in the current buffer into a SourcePosition object for rendering.
DiagnosticBuilder Diag(SourceLocation Loc, unsigned DiagID) {
- return Diags.Report(FullSourceLoc(Loc, getSourceManager()), DiagID);
+ return Diags->Report(FullSourceLoc(Loc, getSourceManager()), DiagID);
}
DiagnosticBuilder Diag(const Token &Tok, unsigned DiagID) {
- return Diags.Report(FullSourceLoc(Tok.getLocation(), getSourceManager()),
- DiagID);
+ return Diags->Report(FullSourceLoc(Tok.getLocation(), getSourceManager()),
+ DiagID);
}
/// getSpelling() - Return the 'spelling' of the Tok token. The spelling of a
diff --git a/lib/Lex/Preprocessor.cpp b/lib/Lex/Preprocessor.cpp
index de70644..38a6919 100644
--- a/lib/Lex/Preprocessor.cpp
+++ b/lib/Lex/Preprocessor.cpp
@@ -49,7 +49,7 @@
TargetInfo &target, SourceManager &SM,
HeaderSearch &Headers,
IdentifierInfoLookup* IILookup)
- : Diags(diags), Features(opts), Target(target), FileMgr(Headers.getFileMgr()),
+ : Diags(&diags), Features(opts), Target(target),FileMgr(Headers.getFileMgr()),
SourceMgr(SM), HeaderInfo(Headers), Identifiers(opts, IILookup),
CurPPLexer(0), CurDirLookup(0), Callbacks(0) {
ScratchBuf = new ScratchBuffer(SourceMgr);