[PATCH] gdb: add ATTRIBUTE_PRINTF to gdb_bfd_error_handler

Tom de Vries tdevries@suse.de
Sun Sep 18 05:45:10 GMT 2022


On 9/18/22 06:58, Enze Li via Gdb-patches wrote:
> 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.


LGTM.

Thanks,
- Tom

> ---
>   gdb/gdb_bfd.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/gdb/gdb_bfd.c b/gdb/gdb_bfd.c
> index 6299148d419..c5a5ed95e8e 100644
> --- a/gdb/gdb_bfd.c
> +++ b/gdb/gdb_bfd.c
> @@ -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;


More information about the Gdb-patches mailing list