diff options
author | Ted Kremenek <kremenek@apple.com> | 2007-11-15 18:10:29 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2007-11-15 18:10:29 +0000 |
commit | 4791e1a7bd87baefddcda033b22ee71299f7d595 (patch) | |
tree | 596067924201b9e4c50e5524ce48b9f86c64fe3b | |
parent | bb3b099f821af1ec19b2047beed4930223828ef8 (diff) | |
download | bcm5719-llvm-4791e1a7bd87baefddcda033b22ee71299f7d595.tar.gz bcm5719-llvm-4791e1a7bd87baefddcda033b22ee71299f7d595.zip |
Started separate section for method definitions for ObjC serialization.
Added missing deserialization case in Stmt::Create() switch statement.
llvm-svn: 44175
-rw-r--r-- | clang/AST/StmtSerialization.cpp | 42 |
1 files changed, 29 insertions, 13 deletions
diff --git a/clang/AST/StmtSerialization.cpp b/clang/AST/StmtSerialization.cpp index d4ddf4c57f9..a1fdcec0f75 100644 --- a/clang/AST/StmtSerialization.cpp +++ b/clang/AST/StmtSerialization.cpp @@ -151,9 +151,20 @@ Stmt* Stmt::Create(Deserializer& D) { case WhileStmtClass: return WhileStmt::CreateImpl(D); + + //==--------------------------------------==// + // Objective C + //==--------------------------------------==// + + case ObjCIvarRefExprClass: + return ObjCIvarRefExpr::CreateImpl(D); } } +//===----------------------------------------------------------------------===// +// C Serialization +//===----------------------------------------------------------------------===// + void AddrLabelExpr::EmitImpl(Serializer& S) const { S.Emit(getType()); S.Emit(AmpAmpLoc); @@ -375,19 +386,6 @@ DeclRefExpr* DeclRefExpr::CreateImpl(Deserializer& D) { return dr; } -void ObjCIvarRefExpr::EmitImpl(Serializer& S) const { - S.Emit(Loc); - S.Emit(getType()); - S.EmitPtr(getDecl()); -} - -ObjCIvarRefExpr* ObjCIvarRefExpr::CreateImpl(Deserializer& D) { - SourceLocation Loc = SourceLocation::ReadVal(D); - QualType T = QualType::ReadVal(D); - ObjCIvarRefExpr* dr = new ObjCIvarRefExpr(NULL,T,Loc); - D.ReadPtr(dr->D,false); - return dr; -} DeclStmt* DeclStmt::CreateImpl(Deserializer& D) { ScopedDecl* decl = cast<ScopedDecl>(D.ReadOwnedPtr<Decl>()); @@ -737,3 +735,21 @@ WhileStmt* WhileStmt::CreateImpl(Deserializer& D) { Stmt* Body = D.ReadOwnedPtr<Stmt>(); return new WhileStmt(Cond,Body,WhileLoc); } + +//===----------------------------------------------------------------------===// +// Objective C Serialization +//===----------------------------------------------------------------------===// + +void ObjCIvarRefExpr::EmitImpl(Serializer& S) const { + S.Emit(Loc); + S.Emit(getType()); + S.EmitPtr(getDecl()); +} + +ObjCIvarRefExpr* ObjCIvarRefExpr::CreateImpl(Deserializer& D) { + SourceLocation Loc = SourceLocation::ReadVal(D); + QualType T = QualType::ReadVal(D); + ObjCIvarRefExpr* dr = new ObjCIvarRefExpr(NULL,T,Loc); + D.ReadPtr(dr->D,false); + return dr; +} |