[clang] [clang-tools-extra] [clang] Extend diagnose_if to accept more detailed warning information (PR #70976)

kadir çetinkaya via cfe-commits cfe-commits at lists.llvm.org
Wed Sep 25 12:56:05 PDT 2024


================
@@ -489,13 +485,7 @@ static DiagnosticIDs::Level toLevel(diag::Severity SV) {
 DiagnosticIDs::Level
 DiagnosticIDs::getDiagnosticLevel(unsigned DiagID, SourceLocation Loc,
                                   const DiagnosticsEngine &Diag) const {
-  // Handle custom diagnostics, which cannot be mapped.
----------------
kadircet wrote:

so despite this change making sense at a high level, this is a big behavior change that isn't really obvious in context of this PR.

before this change, clang didn't propagate `-Werror` like mappings into custom diagnostics. Hence some compilations that succeed now with custom warning (clang-plugins etc.), will start failing after this change as those will now turn into errors.
We're already seeing this internally and both https://github.com/llvm/llvm-project/pull/70976#issuecomment-2357811301 and https://github.com/llvm/llvm-project/pull/70976#issuecomment-2372463357 are mentioning this as well.

Since this is triggering a backward incompatible behavior, can we have this bit reverted and decide how/whether we're planning to move forward with this?

https://github.com/llvm/llvm-project/pull/70976


More information about the cfe-commits mailing list