summaryrefslogtreecommitdiffstats
path: root/clang/include
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2010-10-24 17:26:31 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2010-10-24 17:26:31 +0000
commitad5f95cc4bcaf97debcd1cfd85d1110bfe3af4d3 (patch)
tree06e716a7cfbf1bb8251ee1bdcac7130a3015420e /clang/include
parent8b200a5ef1123dffa74e1d80c567ac0dc86ca68f (diff)
downloadbcm5719-llvm-ad5f95cc4bcaf97debcd1cfd85d1110bfe3af4d3.tar.gz
bcm5719-llvm-ad5f95cc4bcaf97debcd1cfd85d1110bfe3af4d3.zip
Simplify and "robust-ify" the way that CXXRecord references point to the definition data when loaded from PCH.
Temporary disable 'test/PCH/chain-cxx.cpp' until a better way to fix it is in place. llvm-svn: 117234
Diffstat (limited to 'clang/include')
-rw-r--r--clang/include/clang/Serialization/ASTReader.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/clang/include/clang/Serialization/ASTReader.h b/clang/include/clang/Serialization/ASTReader.h
index b049e6eb4e1..b5766b14ebc 100644
--- a/clang/include/clang/Serialization/ASTReader.h
+++ b/clang/include/clang/Serialization/ASTReader.h
@@ -436,6 +436,14 @@ private:
/// haven't been loaded yet.
DeclContextVisibleUpdatesPending PendingVisibleUpdates;
+ typedef llvm::SmallVector<CXXRecordDecl *, 4> ForwardRefs;
+ typedef llvm::DenseMap<const CXXRecordDecl *, ForwardRefs>
+ PendingForwardRefsMap;
+ /// \brief Forward references that have a definition but the definition decl
+ /// is still initializing. When the definition gets read it will update
+ /// the DefinitionData pointer of all pending references.
+ PendingForwardRefsMap PendingForwardRefs;
+
typedef llvm::DenseMap<serialization::DeclID, serialization::DeclID>
FirstLatestDeclIDMap;
/// \brief Map of first declarations from a chained PCH that point to the
OpenPOWER on IntegriCloud