From 5b121eb04d358f83e974b6c5fe069c38cf1f960b Mon Sep 17 00:00:00 2001 From: Ard Biesheuvel Date: Tue, 7 May 2013 20:37:04 +0200 Subject: [PATCH] Fix #64780 (PHP 5.5 builds are broken with GCC 3) A recent change (by me) introduced a call to __builtin_offsetof() into zend_operators.h which is not defined by GCC prior to version 4. Changed the code to use offsetof() instead: this is defined in , so #include this header conditionally (#ifdef GNUC) --- Zend/zend_operators.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Zend/zend_operators.h b/Zend/zend_operators.h index a82c14b8c2..0b890ff48c 100644 --- a/Zend/zend_operators.h +++ b/Zend/zend_operators.h @@ -26,6 +26,10 @@ #include #include +#ifdef __GNUC__ +#include +#endif + #ifdef HAVE_IEEEFP_H #include #endif @@ -497,7 +501,7 @@ ZEND_API void zend_update_current_locale(void); /* The offset in bytes between the value and type fields of a zval */ #define ZVAL_OFFSETOF_TYPE \ - (__builtin_offsetof(zval,type) - __builtin_offsetof(zval,value)) + (offsetof(zval,type) - offsetof(zval,value)) static zend_always_inline int fast_increment_function(zval *op1) { -- 2.40.0