Commit fdea8a94384 for php.net

commit fdea8a94384be854266dbd71f69202fdd3b9caf3
Author: Yongqiang Tian <yqtian668@gmail.com>
Date:   Sun Sep 20 14:03:00 2026 +1000

    Fix GH-23752: Use scoped diagnostic suppression for global register declarations (#23753)

diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c
index 9047550cafb..f690cfab6f8 100644
--- a/Zend/zend_execute.c
+++ b/Zend/zend_execute.c
@@ -71,9 +71,9 @@
 #endif

 #if defined(ZEND_VM_FP_GLOBAL_REG) && ((ZEND_VM_KIND == ZEND_VM_KIND_CALL) || (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID))
-# pragma GCC diagnostic ignored "-Wvolatile-register-var"
+ZEND_DIAGNOSTIC_IGNORED_START("-Wvolatile-register-var")
   register zend_execute_data* volatile execute_data __asm__(ZEND_VM_FP_GLOBAL_REG);
-# pragma GCC diagnostic warning "-Wvolatile-register-var"
+ZEND_DIAGNOSTIC_IGNORED_END
 #endif

 #if defined(ZEND_VM_FP_GLOBAL_REG) && ((ZEND_VM_KIND == ZEND_VM_KIND_CALL) || (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID))
@@ -103,9 +103,9 @@
 #endif

 #if defined(ZEND_VM_IP_GLOBAL_REG) && ((ZEND_VM_KIND == ZEND_VM_KIND_CALL) || (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID))
-# pragma GCC diagnostic ignored "-Wvolatile-register-var"
+ZEND_DIAGNOSTIC_IGNORED_START("-Wvolatile-register-var")
   register const zend_op* volatile opline __asm__(ZEND_VM_IP_GLOBAL_REG);
-# pragma GCC diagnostic warning "-Wvolatile-register-var"
+ZEND_DIAGNOSTIC_IGNORED_END
 #else
 #endif

diff --git a/ext/opcache/jit/zend_jit_vm_helpers.c b/ext/opcache/jit/zend_jit_vm_helpers.c
index 688d523b254..d203ed70dae 100644
--- a/ext/opcache/jit/zend_jit_vm_helpers.c
+++ b/ext/opcache/jit/zend_jit_vm_helpers.c
@@ -30,7 +30,7 @@
 #include "zend_jit_internal.h"

 #ifdef HAVE_GCC_GLOBAL_REGS
-# pragma GCC diagnostic ignored "-Wvolatile-register-var"
+ZEND_DIAGNOSTIC_IGNORED_START("-Wvolatile-register-var")
 # if defined(__x86_64__)
 register zend_execute_data* volatile execute_data __asm__("%r14");
 register const zend_op* volatile opline __asm__("%r15");
@@ -41,7 +41,7 @@ register const zend_op* volatile opline __asm__("%edi");
 register zend_execute_data* volatile execute_data __asm__("x27");
 register const zend_op* volatile opline __asm__("x28");
 # endif
-# pragma GCC diagnostic warning "-Wvolatile-register-var"
+ZEND_DIAGNOSTIC_IGNORED_END
 #endif

 #if ZEND_VM_KIND == ZEND_VM_KIND_TAILCALL