aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
diff options
context:
space:
mode:
authorIain Sandoe <iain@sandoe.co.uk>2022-06-03 10:43:38 +0100
committerIain Sandoe <iain@sandoe.co.uk>2023-03-23 12:47:44 +0000
commitc6e9823724ef6bdfee262289ee34d162db436af0 (patch)
treeb5397aef6918fb4977ef7b48e783ac01786d9b03 /llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
parent7fef15edd4d35d5f2dcaa8cd32d5c8add028dc67 (diff)
downloadllvm-c6e9823724ef6bdfee262289ee34d162db436af0.zip
llvm-c6e9823724ef6bdfee262289ee34d162db436af0.tar.gz
llvm-c6e9823724ef6bdfee262289ee34d162db436af0.tar.bz2
[C++20][Modules] Introduce an implementation module.
We need to be able to distinguish individual TUs from the same module in cases where TU-local entities either need to be hidden (or, for some cases of ADL in template instantiation, need to be detected as exposures). This creates a module type for the implementation which implicitly imports its primary module interface per C++20: [module.unit/8] 'A module-declaration that contains neither an export-keyword nor a module-partition implicitly imports the primary module interface unit of the module as if by a module-import-declaration. Implementation modules are never serialized (-emit-module-interface for an implementation unit is diagnosed and rejected). Differential Revision: https://reviews.llvm.org/D126959
Diffstat (limited to 'llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp')
0 files changed, 0 insertions, 0 deletions