================ @@ -11100,6 +11136,48 @@ Attr *Sema::getImplicitCodeSegOrSectionAttrForFunction(const FunctionDecl *FD, return nullptr; } +// Should only be called when getFunctionEffects() returns a non-empty set. +// Decl should be a FunctionDecl or BlockDecl. +void Sema::CheckAddCallableWithEffects(const Decl *D, FunctionEffectSet FX) { + if (!D->hasBody()) { + if (const auto *FD = D->getAsFunction()) { + if (!FD->willHaveBody()) { + return; + } + } + } + + if (Diags.getIgnoreAllWarnings() || + (Diags.getSuppressSystemWarnings() && + SourceMgr.isInSystemHeader(D->getLocation()))) + return; + + if (hasUncompilableErrorOccurred()) + return; + + // For code in dependent contexts, we'll do this at instantiation time + // (??? This was copied from something else in AnalysisBasedWarnings ???) + if (cast<DeclContext>(D)->isDependentContext()) { + return; + } ---------------- dougsonos wrote:
Thanks. For now I've disabled this with a TODO and will see what happens when I next try the branch on our codebase. https://github.com/llvm/llvm-project/pull/84983 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits