gdb: add ATTRIBUTE_PRINTF to gdb_bfd_error_handler
authorEnze Li <enze.li@hotmail.com>
Mon, 19 Sep 2022 12:43:50 +0000 (20:43 +0800)
committerEnze Li <enze.li@hotmail.com>
Mon, 19 Sep 2022 12:47:32 +0000 (20:47 +0800)
I see this error when building with clang,

  CXX    gdb_bfd.o
gdb_bfd.c:1180:43: error: format string is not a string literal [-Werror,-Wformat-nonliteral]
  const std::string str = string_vprintf (fmt, ap_copy);
                                          ^~~
1 error generated.

This patch adds missing ATTRIBUTE_PRINTF to fix the error.

Tested on x86_64-linux with gcc 12 and clang 14.

gdb/gdb_bfd.c

index 6299148d419a6f4a76e20cfa310a099801f22202..c5a5ed95e8e71a08186c0de9bb18f063d2b6f804 100644 (file)
@@ -1170,7 +1170,7 @@ static bfd_error_handler_type default_bfd_error_handler;
    messages which have been printed once already.  This is done on a
    per-inferior basis.  */
 
-static void
+static void ATTRIBUTE_PRINTF (1, 0)
 gdb_bfd_error_handler (const char *fmt, va_list ap)
 {
   va_list ap_copy;