]> granicus.if.org Git - clang/commitdiff
Implemented serialization for TypedefType.
authorTed Kremenek <kremenek@apple.com>
Sun, 28 Oct 2007 21:21:04 +0000 (21:21 +0000)
committerTed Kremenek <kremenek@apple.com>
Sun, 28 Oct 2007 21:21:04 +0000 (21:21 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43423 91177308-0d34-0410-b5e6-96231b3b80d8

AST/TypeSerialization.cpp
include/clang/AST/Type.h

index 83d8400d3f83da71a7c6eeff3df11bb7afb2f2c5..ef3dc7931f83f559ebc05565c66c6f6b6d6a6d27 100644 (file)
@@ -203,3 +203,15 @@ FunctionTypeProto* FunctionTypeProto::Materialize(llvm::Deserializer& D) {
   
   return FTP;
 }
+
+void TypedefType::Emit(llvm::Serializer& S) const {
+  EmitTypeInternal(S);
+  S.EmitPtr(Decl);
+}
+
+TypedefType* TypedefType::Materialize(llvm::Deserializer& D) {
+  TypedefType* T = new TypedefType(NULL,QualType());
+  T->ReadTypeInternal(D);
+  D.ReadPtr(T->Decl);
+  return T;
+}
index 0bfc86f4d0733326227ae61401ba52b1e444ecf8..e62264b7282eb71ad6713f76dc673f99e4ec3856 100644 (file)
@@ -823,6 +823,9 @@ public:
 
   static bool classof(const Type *T) { return T->getTypeClass() == TypeName; }
   static bool classof(const TypedefType *) { return true; }
+  
+  void Emit(llvm::Serializer& S) const;
+  static TypedefType* Materialize(llvm::Deserializer& D);
 };
 
 /// TypeOfExpr (GCC extension).