diff options
-rw-r--r-- | Zend/zend.h | 12 | ||||
-rw-r--r-- | Zend/zend_alloc.h | 8 |
2 files changed, 13 insertions, 7 deletions
diff --git a/Zend/zend.h b/Zend/zend.h index 65dc1ee885..fea87092f3 100644 --- a/Zend/zend.h +++ b/Zend/zend.h @@ -146,6 +146,18 @@ char *alloca (); # endif #endif +#ifdef __GNUC__ +# define ZEND_GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__) +#else +# define ZEND_GCC_VERSION +#endif + +#if ZEND_GCC_VERSION >= 2096 +# define ZEND_ATTRIBUTE_MALLOC __attribute__ ((__malloc__)) +#else +# define ZEND_ATTRIBUTE_MALLOC +#endif + #if (HAVE_ALLOCA || (defined (__GNUC__) && __GNUC__ >= 2)) && !(defined(ZTS) && defined(ZEND_WIN32)) && !(defined(ZTS) && defined(NETWARE)) && !(defined(ZTS) && defined(HPUX)) # define do_alloca(p) alloca(p) # define free_alloca(p) diff --git a/Zend/zend_alloc.h b/Zend/zend_alloc.h index 15920bb495..57124322f8 100644 --- a/Zend/zend_alloc.h +++ b/Zend/zend_alloc.h @@ -64,18 +64,12 @@ typedef union _align_test { #define MAX_CACHED_ENTRIES 256 #define PRE_INIT_CACHE_ENTRIES 32 -#if __GNUC__ -0 >= 2 +#if ZEND_GCC_VERSION >= 2000 # define PLATFORM_ALIGNMENT (__alignof__ (align_test)) #else # define PLATFORM_ALIGNMENT (sizeof(align_test)) #endif -#if GCC_VERSION - 0 >= 2096 -# define ZEND_ATTRIBUTE_MALLOC __attribute__ ((malloc)) -#else -# define ZEND_ATTRIBUTE_MALLOC -#endif - #define MEM_HEADER_PADDING (((PLATFORM_ALIGNMENT-sizeof(zend_mem_header))%PLATFORM_ALIGNMENT+PLATFORM_ALIGNMENT)%PLATFORM_ALIGNMENT) |