================
@@ -188,13 +192,23 @@ class FullDependencyConsumer : public DependencyConsumer {
ContextHash = std::move(Hash);
}
+ void handleProvidedAndRequiredStdCXXModules(
+ std::optional<P1689ModuleInfo> Provided,
+ std::vector<P1689ModuleInfo> Requires) override {
+ ModuleName = Provided ? Provided->ModuleName : "";
----------------
naveen-seth wrote:
`ModuleName` stores the name of the exported standard C++ module.
After `takeTranslationUnitDeps()`, it is stored in the
`TranslationUnitDeps.ID.ModuleName` field [(here)](
https://github.com/naveen-seth/llvm-project/blob/74772e0e1b54f8f2648c1bcc0311d3389156ab7c/clang/lib/Tooling/DependencyScanning/DependencyScanningTool.cpp#L174).
I don't think this should be dead code because it is used in
`ClangScanDeps.cpp` when printing the `--experimental-full` format (first
reassigned
[here](https://github.com/naveen-seth/llvm-project/blob/4936fc5a5663717ef6f3617320875b07fa201304/clang/tools/clang-scan-deps/ClangScanDeps.cpp#L407C8-L407C19),
then used for printing
[here](https://github.com/naveen-seth/llvm-project/blob/4936fc5a5663717ef6f3617320875b07fa201304/clang/tools/clang-scan-deps/ClangScanDeps.cpp#L525-L526)).
Maybe it would improve clarity if we keep `ContextHash` and `ModuleName`
together in a `ModuleID` field within `FullDependencyConsumer`, just as
TranslationUnitDeps does, rather than keeping them ungrouped.
This would then directly lead people to the documentation of
`ModuleID.ModuleName`
[(here)](https://github.com/naveen-seth/llvm-project/blob/4936fc5a5663717ef6f3617320875b07fa201304/clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h#L93).
https://github.com/llvm/llvm-project/pull/145221
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits