[C++20][Modules][4/8] Handle generation of partition implementation CMIs.
authorIain Sandoe <iain@sandoe.co.uk>
Sun, 7 Feb 2021 17:08:42 +0000 (17:08 +0000)
committerIain Sandoe <iain@sandoe.co.uk>
Fri, 25 Feb 2022 09:33:14 +0000 (09:33 +0000)
commit6114491441700cc8a614d284407e9a6e9bf74751
tree91a6adb55188a1200597bc15ef93d1716aa3acec
parent2cd675249d8d1c570d7f1ea059f40aecb0f68d74
[C++20][Modules][4/8] Handle generation of partition implementation CMIs.

Partition implementations are special, they generate a CMI, but it
does not have an 'export' line, and we cannot export anything from the
it [that is it can only make decls available to other members of the
owning module, not to importers of that].

Add initial testcases for partition handling, derived from the examples in
Section 10 of the C++20 standard, which identifies what should be accepted
and/or rejected.

Differential Revision: https://reviews.llvm.org/D118587
clang/include/clang/Sema/Sema.h
clang/lib/Sema/SemaModule.cpp
clang/test/Modules/cxx20-10-1-ex1.cpp [new file with mode: 0644]
clang/test/Modules/cxx20-10-1-ex2.cpp [new file with mode: 0644]
clang/test/Modules/cxx20-import-diagnostics-a.cpp