diff options
author | Ted Kremenek <kremenek@apple.com> | 2007-11-07 00:40:53 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2007-11-07 00:40:53 +0000 |
commit | 4927be6102784fc69c50234f7e2253283b3e99e4 (patch) | |
tree | 5e9180127f27d25e438a574fd859c1f5ea52e00a | |
parent | 0965f446e7685dc01fc0b5e718610530eed3cc63 (diff) |
Added serialization/deserialization of NullStmts.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43797 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | AST/StmtSerialization.cpp | 13 | ||||
-rw-r--r-- | include/clang/AST/Stmt.h | 3 |
2 files changed, 15 insertions, 1 deletions
diff --git a/AST/StmtSerialization.cpp b/AST/StmtSerialization.cpp index 485876dfd2..e27c703eb4 100644 --- a/AST/StmtSerialization.cpp +++ b/AST/StmtSerialization.cpp @@ -44,7 +44,10 @@ Stmt* Stmt::Materialize(llvm::Deserializer& D) { return DeclStmt::directMaterialize(D); case IntegerLiteralClass: - return IntegerLiteral::directMaterialize(D); + return IntegerLiteral::directMaterialize(D); + + case NullStmtClass: + return NullStmt::directMaterialize(D); case ReturnStmtClass: return ReturnStmt::directMaterialize(D); @@ -137,6 +140,14 @@ IntegerLiteral* IntegerLiteral::directMaterialize(llvm::Deserializer& D) { return expr; } +void NullStmt::directEmit(llvm::Serializer& S) const { + S.Emit(SemiLoc); +} + +NullStmt* NullStmt::directMaterialize(llvm::Deserializer& D) { + SourceLocation SemiLoc = SourceLocation::ReadVal(D); + return new NullStmt(SemiLoc); +} void ReturnStmt::directEmit(llvm::Serializer& S) const { S.Emit(RetLoc); diff --git a/include/clang/AST/Stmt.h b/include/clang/AST/Stmt.h index c82f29f17b..102b3f82f6 100644 --- a/include/clang/AST/Stmt.h +++ b/include/clang/AST/Stmt.h @@ -167,6 +167,9 @@ public: // Iterators virtual child_iterator child_begin(); virtual child_iterator child_end(); + + virtual void directEmit(llvm::Serializer& S) const; + static NullStmt* directMaterialize(llvm::Deserializer& D); }; /// CompoundStmt - This represents a group of statements like { stmt stmt }. |