aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenModule.cpp
diff options
context:
space:
mode:
authorChuanqi Xu <yedeng.yd@linux.alibaba.com>2024-06-25 14:39:38 +0800
committerChuanqi Xu <yedeng.yd@linux.alibaba.com>2024-06-25 15:04:32 +0800
commitfa20184a8f336e4154f2ffeeeb8a538dc9462d9a (patch)
tree3b2aa841f0d4834dfaa6513a84fe0b1d69b424e0 /clang/lib/CodeGen/CodeGenModule.cpp
parentf01958137f358f4fd3e71636b187db14a37a5853 (diff)
downloadllvm-fa20184a8f336e4154f2ffeeeb8a538dc9462d9a.zip
llvm-fa20184a8f336e4154f2ffeeeb8a538dc9462d9a.tar.gz
llvm-fa20184a8f336e4154f2ffeeeb8a538dc9462d9a.tar.bz2
[C++20] [Modules] [Serialization] Don't reuse type ID and identifier ID from imported modules
To support no-transitive-change model for named modules, we can't reuse type ID and identifier ID from imported modules arbitrarily. Since the theory for no-transitive-change model is, for a user of a named module, the user can only access the indirectly imported decls via the directly imported module. So that it is possible to control what matters to the users when writing the module. And it will be unsafe to do so if the users can reuse the type IDs and identifier IDs from the indirectly imported modules not via the directly imported modules. So in this patch, we don't reuse the type ID and identifier ID in the AST writer to avoid the problematic case.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions