================ @@ -1909,7 +1909,19 @@ class Sema final : public SemaBase { /// '\#pragma clang attribute push' directives to the given declaration. void AddPragmaAttributes(Scope *S, Decl *D); - void PrintPragmaAttributeInstantiationPoint(); + using DiagFuncRef = + llvm::function_ref<void(SourceLocation, PartialDiagnostic)>; + auto getDefaultDiagFunc() { + return [this](SourceLocation Loc, PartialDiagnostic PD) { + DiagnosticBuilder Builder(Diags.Report(Loc, PD.getDiagID())); ---------------- mizvekov wrote:
This bypasses a lot of the things `this->Diag(Loc, PD)` does, like SFINAE handling, ignoring notes attached to ignored diagnostics, adding instantiation context notes, and more, because we have already done them before storing the suppressed diagnostics, and we are just attaching notes to them. https://github.com/llvm/llvm-project/pull/125453 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits