From 41565463bd69932307daacf7e9b51e6a16dc6853 Mon Sep 17 00:00:00 2001 From: David Blaikie Date: Thu, 5 Jan 2017 19:48:07 +0000 Subject: Move Preprocessor over to std::shared_ptr rather than IntrusiveRefCntPtr llvm-svn: 291166 --- clang/lib/Frontend/CompilerInstance.cpp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'clang/lib/Frontend/CompilerInstance.cpp') diff --git a/clang/lib/Frontend/CompilerInstance.cpp b/clang/lib/Frontend/CompilerInstance.cpp index 10b8c7f..0d8d972 100644 --- a/clang/lib/Frontend/CompilerInstance.cpp +++ b/clang/lib/Frontend/CompilerInstance.cpp @@ -96,7 +96,9 @@ void CompilerInstance::setSourceManager(SourceManager *Value) { SourceMgr = Value; } -void CompilerInstance::setPreprocessor(Preprocessor *Value) { PP = Value; } +void CompilerInstance::setPreprocessor(std::shared_ptr Value) { + PP = std::move(Value); +} void CompilerInstance::setASTContext(ASTContext *Value) { Context = Value; @@ -370,10 +372,10 @@ void CompilerInstance::createPreprocessor(TranslationUnitKind TUKind) { getDiagnostics(), getLangOpts(), &getTarget()); - PP = new Preprocessor(Invocation->getPreprocessorOptsPtr(), getDiagnostics(), - getLangOpts(), getSourceManager(), *HeaderInfo, *this, - PTHMgr, - /*OwnsHeaderSearch=*/true, TUKind); + PP = std::make_shared( + Invocation->getPreprocessorOptsPtr(), getDiagnostics(), getLangOpts(), + getSourceManager(), *HeaderInfo, *this, PTHMgr, + /*OwnsHeaderSearch=*/true, TUKind); PP->Initialize(getTarget(), getAuxTarget()); // Note that this is different then passing PTHMgr to Preprocessor's ctor. -- cgit v1.1