================ @@ -2527,7 +2527,7 @@ class BitsUnpacker { inline bool shouldSkipCheckingODR(const Decl *D) { return D->getASTContext().getLangOpts().SkipODRCheckInGMF && - D->isFromGlobalModule(); + (D->isFromGlobalModule() || !D->isInNamedModule()); ---------------- ChuanqiXu9 wrote:
They are different (and unfortunate) abstract layers. For example, according to the standard, everything not in a named module should be treated in the global module. However, in clang, in several places, we can't simply write `!isInNamedModule()` since we have clang modules and PCHs. In clang we tried to be close to the wording of the spec but there are places (not limited to modules) they are not strictly the same. https://github.com/llvm/llvm-project/pull/111160 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits