From: Martin Liska Date: Thu, 20 Jan 2022 08:28:42 +0000 (+0100) Subject: Fix -Werror=format-diag with RTL checking X-Git-Tag: basepoints/gcc-13~1554 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e744aa373d215d1e8b3f4102a71b26b385dababc;p=thirdparty%2Fgcc.git Fix -Werror=format-diag with RTL checking PR bootstrap/104135 gcc/ChangeLog: * emit-rtl.cc (make_insn_raw): Fix -Wformat-diag warnings. * rtl.cc: Partially disable -Wformat-diag for RTL checking error messages. --- diff --git a/gcc/emit-rtl.cc b/gcc/emit-rtl.cc index 3260ca8c3fa5..a26bcb0fa2d0 100644 --- a/gcc/emit-rtl.cc +++ b/gcc/emit-rtl.cc @@ -3997,7 +3997,7 @@ make_insn_raw (rtx pattern) || (GET_CODE (insn) == SET && SET_DEST (insn) == pc_rtx))) { - warning (0, "ICE: emit_insn used where emit_jump_insn needed:\n"); + warning (0, "ICE: % used where % needed:"); debug_rtx (insn); } #endif diff --git a/gcc/rtl.cc b/gcc/rtl.cc index 02dd25547285..f17474bfee19 100644 --- a/gcc/rtl.cc +++ b/gcc/rtl.cc @@ -870,6 +870,15 @@ dump_rtx_statistics (void) } #if defined ENABLE_RTL_CHECKING && (GCC_VERSION >= 2007) + +/* Disable warnings about missing quoting in GCC diagnostics for + the internal_error calls. Their format strings deliberately don't + follow GCC diagnostic conventions. */ +#if __GNUC__ >= 10 +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wformat-diag" +#endif + void rtl_check_failed_bounds (const_rtx r, int n, const char *file, int line, const char *func) @@ -945,6 +954,10 @@ rtl_check_failed_code_mode (const_rtx r, enum rtx_code code, machine_mode mode, func, trim_filename (file), line); } +#if __GNUC__ >= 10 +#pragma GCC diagnostic pop +#endif + /* Report that line LINE of FILE tried to access the block symbol fields of a non-block symbol. FUNC is the function that contains the line. */