[clang] [clang] print correct context for diagnostics suppressed by deduction (PR #125453)
Matheus Izvekov via cfe-commits
cfe-commits at lists.llvm.org
Mon Feb 3 16:09:06 PST 2025
================
@@ -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()));
+ PD.Emit(Builder);
+ };
+ }
----------------
mizvekov wrote:
I thought about / tried that first, but assuming multiple users, I think there is less duplication this way, and the duplication is more obvious.
There are some other functions that can start taking this parameter in future patches.
https://github.com/llvm/llvm-project/pull/125453
More information about the cfe-commits
mailing list