mirror of
https://github.com/MariaDB/server.git
synced 2026-04-21 15:55:53 +02:00
Add ATTRIBUTE_FORMAT_FPTR macro for setting format specifier also on function pointers
This was available from gcc 3.1, so diable it before that Update m_ctype.h to use the new macro include/m_ctype.h: Use macro ATTRIBUTE_FORMAT_FPTR on function pointer include/my_global.h: Add ATTRIBUTE_FORMAT_FPTR macro for setting format specifier also on function pointers This was available from gcc 3.1, so diable it before that
This commit is contained in:
parent
c71ecd928f
commit
cdec7323ec
2 changed files with 14 additions and 4 deletions
|
|
@ -175,7 +175,7 @@ typedef struct my_charset_handler_st
|
|||
|
||||
/* Charset dependant snprintf() */
|
||||
int (*snprintf)(struct charset_info_st *, char *to, uint n, const char *fmt,
|
||||
...) ATTRIBUTE_FORMAT(printf, 4, 5);
|
||||
...) ATTRIBUTE_FORMAT_FPTR(printf, 4, 5);
|
||||
int (*long10_to_str)(struct charset_info_st *, char *to, uint n, int radix,
|
||||
long int val);
|
||||
int (*longlong10_to_str)(struct charset_info_st *, char *to, uint n,
|
||||
|
|
|
|||
|
|
@ -431,9 +431,6 @@ typedef unsigned short ushort;
|
|||
#ifndef __attribute__
|
||||
# if !defined(__GNUC__)
|
||||
# define __attribute__(A)
|
||||
# elif defined (__QNXNTO__)
|
||||
/* qcc defines GNUC */
|
||||
# define __attribute__(A)
|
||||
# elif GCC_VERSION < 2008
|
||||
# define __attribute__(A)
|
||||
# elif defined(__cplusplus) && GCC_VERSION < 3004
|
||||
|
|
@ -450,6 +447,19 @@ typedef unsigned short ushort;
|
|||
# define ATTRIBUTE_FORMAT(style, m, n) __attribute__((format(style, m, n)))
|
||||
#endif
|
||||
|
||||
/*
|
||||
__attribute__((format(...))) on a function pointer is not supported
|
||||
until gcc 3.1
|
||||
*/
|
||||
#ifndef ATTRIBUTE_FORMAT_FPTR
|
||||
# if (GCC_VERSION >= 3001)
|
||||
# define ATTRIBUTE_FORMAT_FPTR(style, m, n) ATTRIBUTE_FORMAT(style, m, n)
|
||||
# else
|
||||
# define ATTRIBUTE_FORMAT_FPTR(style, m, n)
|
||||
# endif /* GNUC >= 3.1 */
|
||||
#endif
|
||||
|
||||
|
||||
/* From old s-system.h */
|
||||
|
||||
/*
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue