diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2014-08-23 01:45:27 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2014-08-23 01:45:27 +0000 |
commit | 63f1f83277156100b2eabf44ac0de16f037854d9 (patch) | |
tree | 48d86a5e20fb4aa9d0676758a795e64fc0e0ca0e /include/clang/Serialization | |
parent | 309e8e9897c9565b014cf778790ee3a13a1c3b24 (diff) |
[modules] When merging a tag declaration that has a typedef name for linkage
purposes, look for other typedefs with that same name and merge into their
named tag declaration if there is one.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@216312 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Serialization')
-rw-r--r-- | include/clang/Serialization/ASTReader.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/clang/Serialization/ASTReader.h b/include/clang/Serialization/ASTReader.h index 49faafbe49..3738c37ae9 100644 --- a/include/clang/Serialization/ASTReader.h +++ b/include/clang/Serialization/ASTReader.h @@ -438,6 +438,11 @@ private: /// \brief Declarations that have been replaced in a later file in the chain. DeclReplacementMap ReplacedDecls; + /// \brief Declarations that have been imported and have typedef names for + /// linkage purposes. + llvm::DenseMap<std::pair<DeclContext*, IdentifierInfo*>, NamedDecl*> + ImportedTypedefNamesForLinkage; + struct FileDeclsInfo { ModuleFile *Mod; ArrayRef<serialization::LocalDeclID> Decls; |