diff options
author | Chris Lattner <sabre@nondot.org> | 2009-03-28 03:56:54 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2009-03-28 03:56:54 +0000 |
commit | d2fa67570b363843215f62395b795c1f70e6b85f (patch) | |
tree | d8a2c186fba1bf275c6ea6cfdd678dc5293dd624 /tools/clang-cc/SerializationTest.cpp | |
parent | 80a033358d8da09d1f62b0b3ba98cee0346c0a49 (diff) |
hoist TranslationUnit some more.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67905 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/clang-cc/SerializationTest.cpp')
-rw-r--r-- | tools/clang-cc/SerializationTest.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/tools/clang-cc/SerializationTest.cpp b/tools/clang-cc/SerializationTest.cpp index aa3163f556..770f9b3b87 100644 --- a/tools/clang-cc/SerializationTest.cpp +++ b/tools/clang-cc/SerializationTest.cpp @@ -46,7 +46,7 @@ public: private: bool Serialize(llvm::sys::Path& Filename, llvm::sys::Path& FNameDeclPrint, - TranslationUnit& TU); + ASTContext &Ctx); bool Deserialize(llvm::sys::Path& Filename, llvm::sys::Path& FNameDeclPrint); }; @@ -61,7 +61,7 @@ clang::CreateSerializationTest(Diagnostic &Diags, FileManager& FMgr) { bool SerializationTest::Serialize(llvm::sys::Path& Filename, llvm::sys::Path& FNameDeclPrint, - TranslationUnit& TU) { + ASTContext &Ctx) { { // Pretty-print the decls to a temp file. std::string Err; @@ -69,7 +69,9 @@ bool SerializationTest::Serialize(llvm::sys::Path& Filename, assert (Err.empty() && "Could not open file for printing out decls."); llvm::OwningPtr<ASTConsumer> FilePrinter(CreateASTPrinter(&DeclPP)); - for (TranslationUnit::iterator I=TU.begin(), E=TU.end(); I!=E; ++I) + TranslationUnitDecl *TUD = Ctx.getTranslationUnitDecl(); + for (DeclContext::decl_iterator I = TUD->decls_begin(), E =TUD->decls_end(); + I != E; ++I) FilePrinter->HandleTopLevelDecl(*I); } @@ -79,7 +81,7 @@ bool SerializationTest::Serialize(llvm::sys::Path& Filename, std::vector<unsigned char> Buffer; Buffer.reserve(256*1024); - EmitASTBitcodeBuffer(TU,Buffer); + EmitASTBitcodeBuffer(Ctx, Buffer); // Write the bits to disk. if (FILE* fp = fopen(Filename.c_str(),"wb")) { @@ -177,7 +179,7 @@ void SerializationTest::HandleTranslationUnit(TranslationUnit& TU) { } // Serialize and then deserialize the ASTs. - bool status = Serialize(ASTFilename, FNameDeclBefore, TU); + bool status = Serialize(ASTFilename, FNameDeclBefore, TU.getContext()); assert (status && "Serialization failed."); status = Deserialize(ASTFilename, FNameDeclAfter); assert (status && "Deserialization failed."); |