]> granicus.if.org Git - clang/commitdiff
Started separate section for method definitions for ObjC serialization.
authorTed Kremenek <kremenek@apple.com>
Thu, 15 Nov 2007 18:10:29 +0000 (18:10 +0000)
committerTed Kremenek <kremenek@apple.com>
Thu, 15 Nov 2007 18:10:29 +0000 (18:10 +0000)
Added missing deserialization case in Stmt::Create() switch statement.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44175 91177308-0d34-0410-b5e6-96231b3b80d8

AST/StmtSerialization.cpp

index d4ddf4c57f9dfbf4bcac8dfcef9b49aa375e5509..a1fdcec0f75f52c64d93ab49750b159966074eb9 100644 (file)
@@ -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;
+}