================
@@ -1469,6 +1470,12 @@ bool MatchASTVisitor::TraverseDecl(Decl *DeclNode) {
return true;
}
+ if (Options.SkipDeclsInModules && DeclNode->isFromASTFile()) {
+ auto *M = DeclNode->getOwningModule();
+ if (M && (M->isInterfaceOrPartition() || M->isGlobalModule()))
+ return true;
+ }
+
----------------
ChuanqiXu9 wrote:
Yes, I think this is fine. `isFromASTFile` means this is deserialized.
`(M->isInterfaceOrPartition() || M->isGlobalModule())` means it is from named
modules. There are other kinds of modules but they are header modules, which
have headers semantics. While the C++20 named modules is another TU, not a
header. So I think it is proper here.
https://github.com/llvm/llvm-project/pull/145630
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits