llvm-project/clang/lib/Serialization
Chuanqi Xu f85ee6d56a [NFC] [AST] Move isSameEntity into ASTContext
Currently we are trying to implement the semantics of C++ Modules. A big
challenge would be the ODR checking. Previously we did this in
ASTReader, it would handle the cases like:
```
module;
export module a_module;
import another_module; //  check the ODR consistency here
```
or
```
export module m;
import a_module;
import another_module; // check the ODR consistency here
```

However, it wouldn't handle the case:
```
import another_module; // When we check ODR here, everything looks fine.
```

In the case, the read process is ended. But we need to check the ODR
still. To reuse the facility we do in ASTReader, this patch moves the
corresponding codes into ASTContext. This should be good since there
were facilities like `hasSameTemplateName` and `hasSameType`.

Although the patch is a little bit big, all of the change should be
trivial.

Reviewed By: erichkeane

Differential Revision: https://reviews.llvm.org/D118223
2022-01-27 10:30:50 +08:00
..
ASTCommon.cpp [Clang] Add __ibm128 type to represent ppc_fp128 2021-09-06 18:00:58 +08:00
ASTCommon.h
ASTReader.cpp [clang][lex] Include tracking: simplify and move to preprocessor 2022-01-26 15:56:26 +01:00
ASTReaderDecl.cpp [NFC] [AST] Move isSameEntity into ASTContext 2022-01-27 10:30:50 +08:00
ASTReaderInternals.h [clang] Remove unused forward declarations (NFC) 2022-01-08 11:56:40 -08:00
ASTReaderStmt.cpp [OpenMP] support depend clause for taskwait directive, by Deepak 2021-11-19 06:30:17 -08:00
ASTWriter.cpp [clang][lex] Include tracking: simplify and move to preprocessor 2022-01-26 15:56:26 +01:00
ASTWriterDecl.cpp [clang] Allocate 2 bits to store the constexpr specifier kind when serializing 2021-11-17 16:56:46 -05:00
ASTWriterStmt.cpp [OpenMP] support depend clause for taskwait directive, by Deepak 2021-11-19 06:30:17 -08:00
CMakeLists.txt [openmp] Base of tablegen generated OpenMP common declaration 2020-06-23 10:32:32 -04:00
GeneratePCH.cpp [clang][modules] NFC: Propagate import `SourceLocation` into `HeaderSearch::lookupModule` 2021-10-12 09:31:51 +02:00
GlobalModuleIndex.cpp [clang][NFC] Use SmallString instead of SmallVector<char 2020-11-17 13:02:58 +00:00
InMemoryModuleCache.cpp Revert "[modules] Do not cache invalid state for modules that we attempted to load." 2020-03-10 10:59:26 -07:00
ModuleFile.cpp clang/Modules: Move Serialization/Module.{h,cpp} to ModuleFile, NFC 2019-11-21 19:07:00 -08:00
ModuleFileExtension.cpp [modules] Use `HashBuilder` and `MD5` for the module hash. 2021-09-03 11:13:36 -07:00
ModuleManager.cpp unique_ptrify the ModuleManager's VisitState linked list 2022-01-19 09:57:46 -08:00
MultiOnDiskHashTable.h
PCHContainerOperations.cpp