]> granicus.if.org Git - clang/commit
Added QualType::ReadBackpatch to allow QualType initialization with
authorTed Kremenek <kremenek@apple.com>
Wed, 14 Nov 2007 22:51:02 +0000 (22:51 +0000)
committerTed Kremenek <kremenek@apple.com>
Wed, 14 Nov 2007 22:51:02 +0000 (22:51 +0000)
commit21d50e12c3c412d8457071dc419363b7a7e8b855
tree929db2b8f7628d7490c91c9bdd3c07da093903e4
parent9567392e164128d853f0005014114d1ffc06fa86
Added QualType::ReadBackpatch to allow QualType initialization with
backpatching. This original was available, but then we removed it. It is back
again to help with deserialization of FieldDecls. Because FieldDecls are
currently owned by RecordDecls, which are owned by a TagType, the type of the
FieldDecl may not be deserialized prior to deserializing the FieldDecl. Thus
backpatching solves the problem of constructing a FieldDecl that references a
type that has not yet been deserialized.

Simplified serialization of TagType to not require passing in the
SerializedPtrID. Registration of the materialized type object is done after
the CreateImpl method returns (as with other types).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44143 91177308-0d34-0410-b5e6-96231b3b80d8
AST/DeclSerialization.cpp
AST/TypeSerialization.cpp
include/clang/AST/Type.h