Add check in the driver to see if a serialized AST file has been successfully
deserialized.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45006 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Driver/clang.cpp b/Driver/clang.cpp
index 8a6d132..bcffeb7 100644
--- a/Driver/clang.cpp
+++ b/Driver/clang.cpp
@@ -984,7 +984,14 @@
exit (1);
}
- TranslationUnit* TU = TranslationUnit::ReadBitcodeFile(Filename,FileMgr);
+ TranslationUnit* TU = TranslationUnit::ReadBitcodeFile(Filename,FileMgr);
+
+ if (!TU) {
+ fprintf(stderr, "error: file '%s' could not be deserialized\n",
+ InFile.c_str());
+ exit (1);
+ }
+
ASTConsumer* Consumer = CreateASTConsumer(InFile,Diag,
FileMgr,TU->getLangOpts());