diff options
Diffstat (limited to 'include/clang/Serialization/Module.h')
-rw-r--r-- | include/clang/Serialization/Module.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/include/clang/Serialization/Module.h b/include/clang/Serialization/Module.h index 16d9779e04..cbac5cd148 100644 --- a/include/clang/Serialization/Module.h +++ b/include/clang/Serialization/Module.h @@ -260,6 +260,15 @@ public: /// \brief Remapping table for declaration IDs in this module. ContinuousRangeMap<uint32_t, int, 2> DeclRemap; + /// \brief Mapping from the module files that this module file depends on + /// to the base declaration ID for that module as it is understood within this + /// module. + /// + /// This is effectively a reverse global-to-local mapping for declaration + /// IDs, so that we can interpret a true global ID (for this translation unit) + /// as a local ID (for this module file). + llvm::DenseMap<ModuleFile *, serialization::DeclID> GlobalToLocalDeclIDs; + /// \brief The number of C++ base specifier sets in this AST file. unsigned LocalNumCXXBaseSpecifiers; @@ -286,6 +295,13 @@ public: /// \brief Array of file-level DeclIDs sorted by file. const serialization::DeclID *FileSortedDecls; + /// \brief Array of redeclaration information within this module file, + /// sorted by the first declaration ID. + const serialization::LocalRedeclarationsInfo *RedeclarationsInfo; + + /// \brief The number of redeclaration info entries in RedeclarationsInfo. + unsigned LocalNumRedeclarationsInfos; + // === Types === /// \brief The number of types in this AST file. |