[interop] do not print inline C++ namespaces when printing module interface

This commit is contained in:
Alex Lorenz
2023-03-20 19:16:47 -07:00
parent 25280cb4cd
commit 259763c278
5 changed files with 60 additions and 11 deletions

View File

@@ -291,9 +291,12 @@ static bool getModuleInterfaceInfo(ASTContext &Ctx,
PrintOptions Options = PrintOptions::printModuleInterface(
Ctx.TypeCheckerOpts.PrintFullConvention);
if (Mod->findUnderlyingClangModule()) {
// Show unavailable C++ APIs.
if (Ctx.LangOpts.EnableCXXInterop)
if (Ctx.LangOpts.EnableCXXInterop) {
// Show unavailable C++ APIs.
Options.SkipUnavailable = false;
// Skip over inline namespaces.
Options.SkipInlineCXXNamespace = true;
}
}
ModuleTraversalOptions TraversalOptions = None; // Don't print submodules.
SmallString<128> Text;