[PATCH 1/2] include: Don't use the printf format attribute when compiling against msvcrt and not cross-compiling.

Chip Davis cdavis at codeweavers.com
Wed Dec 4 12:36:10 CST 2019


December 4, 2019 12:28 PM, "Zebediah Figura" <z.figura12 at gmail.com> wrote:

> diff --git a/include/wine/debug.h b/include/wine/debug.h
> index 1c312e9322..81c32e1816 100644
> --- a/include/wine/debug.h
> +++ b/include/wine/debug.h
> @@ -92,7 +92,11 @@ struct __wine_debug_channel
>  #define __WINE_DBG_LOG(args...) \
>      wine_dbg_log( __dbcl, __dbch, __FUNCTION__, args); } } while(0)
> 
> +#if !defined(__WINE_USE_MSVCRT) || defined(__MINGW32__)
>  #define __WINE_PRINTF_ATTR(fmt,args) __attribute__((format (printf,fmt,args)))
> +#else
> +#define __WINE_PRINTF_ATTR(fmt,args)
> +#endif

Consider using '__attribute__((format(ms_printf)))' instead. That shouldn't warn on %I, but would still give us the benefits of GCC/Clang's warning. Note that Clang does not yet support that form. I have a patch to fix that, but I need to get it upstream.

> 
>  #ifdef WINE_NO_TRACE_MSGS


Chip



More information about the wine-devel mailing list