1
0
mirror of https://github.com/MariaDB/server.git synced 2025-12-24 11:21:21 +03:00

Bug#25118 ATTRIBUTE_FORMAT_FPTR undeclared in m_ctype.h

- Move marcos for __attribute__ usage to my_attribute.h and
   include that file where needed


include/Makefile.am:
  Add new header file my_attribute.h
include/m_ctype.h:
  Include my_attribute.h in order to use ATTRIBUTE_* macros
include/my_global.h:
  Move the ATTRIBUTE_* macros to my_attribute.h 
  Include my_attribute.h
include/my_sys.h:
  No need to protect the inclusion of header file, it will
  protect itself
include/my_attribute.h:
  New BitKeeper file ``include/my_attribute.h''
This commit is contained in:
unknown
2007-04-12 00:43:25 +02:00
parent 561cd328a3
commit bf5833bde8
5 changed files with 67 additions and 41 deletions

View File

@@ -497,43 +497,7 @@ typedef unsigned short ushort;
#define my_const_cast(A) (A)
#endif
/*
Disable __attribute__() on gcc < 2.7, g++ < 3.4, and non-gcc compilers.
Some forms of __attribute__ are actually supported in earlier versions of
g++, but we just disable them all because we only use them to generate
compilation warnings.
*/
#ifndef __attribute__
# if !defined(__GNUC__)
# define __attribute__(A)
# elif GCC_VERSION < 2008
# define __attribute__(A)
# elif defined(__cplusplus) && GCC_VERSION < 3004
# define __attribute__(A)
# endif
#endif
/*
__attribute__((format(...))) is only supported in gcc >= 2.8 and g++ >= 3.4
But that's already covered by the __attribute__ tests above, so this is
just a convenience macro.
*/
#ifndef ATTRIBUTE_FORMAT
# 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
#include <my_attribute.h>
/*
Wen using the embedded library, users might run into link problems,