Skip to content
Snippets Groups Projects
Commit f05ef170 authored by Ben Langmuir's avatar Ben Langmuir
Browse files

Don't read CompilerInstance fields that don't exist in ASTUnit

When transferring data from a CompilerInstance in an error path we need
to consider cases where the various fields are uninitialized.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@206644 91177308-0d34-0410-b5e6-96231b3b80d8
parent f4a4206c
No related branches found
No related tags found
No related merge requests found
......@@ -1717,11 +1717,14 @@ void ASTUnit::transferASTDataFromCompilerInstance(CompilerInstance &CI) {
// Steal the created target, context, and preprocessor.
TheSema.reset(CI.takeSema());
Consumer.reset(CI.takeASTConsumer());
Ctx = &CI.getASTContext();
PP = &CI.getPreprocessor();
if (CI.hasASTContext())
Ctx = &CI.getASTContext();
if (CI.hasPreprocessor())
PP = &CI.getPreprocessor();
CI.setSourceManager(0);
CI.setFileManager(0);
Target = &CI.getTarget();
if (CI.hasTarget())
Target = &CI.getTarget();
Reader = CI.getModuleManager();
HadModuleLoaderFatalFailure = CI.hadModuleLoaderFatalFailure();
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment