Commit c76b33d584d for php.net
commit c76b33d584d6329dcb40a4f8b190e0ecb587135a
Author: Tim Düsterhus <tim@bastelstu.be>
Date: Sun Jun 14 15:51:47 2026 +0200
zend_types: Remove the unused `Z_GC_*()` macros (#22303)
diff --git a/UPGRADING.INTERNALS b/UPGRADING.INTERNALS
index bb2f6227475..1f24fb82fcf 100644
--- a/UPGRADING.INTERNALS
+++ b/UPGRADING.INTERNALS
@@ -104,6 +104,8 @@ PHP 8.6 INTERNALS UPGRADE NOTES
. The deprecated Z_IMMUTABLE(), Z_IMMUTABLE_P(), Z_OPT_IMMUTABLE(), and
Z_OPT_IMMUTABLE_P() macros have been removed. Check for
IS_ARRAY && !REFCOUNTED directly.
+ . The unused Z_GC_*() macros have been removed. Use the corresponding
+ GC_*() macro on the result of Z_COUNTED().
. The zend_binary_zval_strcmp() and zend_binary_zval_strncmp() functions
have been removed, because they are unsafe by relying on the zvals
having a specific type. Use zend_binary_strcmp() / zend_binary_strncmp(),
diff --git a/Zend/zend_types.h b/Zend/zend_types.h
index f3039d20251..0edc4df3748 100644
--- a/Zend/zend_types.h
+++ b/Zend/zend_types.h
@@ -864,17 +864,6 @@ static zend_always_inline uint32_t zend_gc_delref_ex(zend_refcounted_h *p, uint3
} \
} while (0)
-#define Z_GC_TYPE(zval) GC_TYPE(Z_COUNTED(zval))
-#define Z_GC_TYPE_P(zval_p) Z_GC_TYPE(*(zval_p))
-
-#define Z_GC_FLAGS(zval) GC_FLAGS(Z_COUNTED(zval))
-#define Z_GC_FLAGS_P(zval_p) Z_GC_FLAGS(*(zval_p))
-
-#define Z_GC_INFO(zval) GC_INFO(Z_COUNTED(zval))
-#define Z_GC_INFO_P(zval_p) Z_GC_INFO(*(zval_p))
-#define Z_GC_TYPE_INFO(zval) GC_TYPE_INFO(Z_COUNTED(zval))
-#define Z_GC_TYPE_INFO_P(zval_p) Z_GC_TYPE_INFO(*(zval_p))
-
#define GC_NULL (IS_NULL | (GC_NOT_COLLECTABLE << GC_FLAGS_SHIFT))
#define GC_STRING (IS_STRING | (GC_NOT_COLLECTABLE << GC_FLAGS_SHIFT))
#define GC_ARRAY IS_ARRAY