[clang] [clang] print correct context for diagnostics suppressed by deduction (PR #125453)
Erich Keane via cfe-commits
cfe-commits at lists.llvm.org
Tue Feb 4 06:53:40 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) {
----------------
erichkeane wrote:
`PartialDiagnostic`, or `PDiag` don't actually have a location. `PartialDiagnostic` is only the diag-ID, plus up to the full-list (meaning, doesn't have to be the full list) of `<<` arguments. `PartialDiagnosticAt` is a `std::pair` for cases where you already know the location, exactly the use here.
https://github.com/llvm/llvm-project/pull/125453
More information about the cfe-commits
mailing list