Commit 0c2444643e8 for php
commit 0c2444643e866da1fe219acd079464006e350531
Merge: 7f5658403c5 3cab493029a
Author: Arnaud Le Blanc <arnaud.lb@gmail.com>
Date: Fri Sep 25 15:32:14 2026 +0200
Merge branch 'PHP-8.5' into PHP-8.6
* PHP-8.5:
ext/pcntl: do not drop queued signals when an exception is pending (#23624)
diff --cc NEWS
index 0d1d864e52a,cc86e4e8be3..40bc06f89e2
--- a/NEWS
+++ b/NEWS
@@@ -1,37 -1,16 +1,43 @@@
PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-?? ??? ????, PHP 8.5.12
+?? ??? ????, PHP 8.6.0RC3
- Core:
- . Fixed bug GH-23644 (Optimizer leaves a constant-vs-constant comparison
- unfolded, crashing the VM in zval_undefined_cv). (ndossche)
- . Fixed OSS-Fuzz 532353396 (assertion failure with static type). (Girgias)
- . Fix GH-23662 (Avoid NAN warning in print_r()). (CodedByManish)
- . Fix GH-21999: GC inconsistency with lazy object, var_dump(), and object
- comparison. (Arnaud)
. Fixed OSS-Fuzz #536440507 (Immutable class incorrect assertion).
(ndossche)
+ . Fixed bug GH-23628 (Tracing JIT reads undefined property slots of lazy
+ proxy objects instead of forwarding to the real instance). (lisachenko)
+ . Fixed bug GH-23882 (array_map() optimization is incorrect for
+ strict_types=1). (timwolla)
+ . Fixed OSS-Fuzz #565486253 (coerced arg with '...' on non-variadic
+ function). (ndossche)
+
+- Opcache:
+ . Fix zend_analyze_calls() call_stack buffer overrun. (Mrmaxmeier)
+ . Fixed bug GH-23679 (Tracing JIT writes a parent private property into a
+ child's shadowing public property). (Ilia Alshanetsky)
+
++- PCNTL:
++ . Fixed pcntl_signal_dispatch() dropping the queued signals when it runs while
++ an exception is pending. (nicolas-grekas)
++ . Fixed pcntl_signal_dispatch() dropping the signals queued behind a handler
++ that throws. (nicolas-grekas)
++
+24 Sep 2026, PHP 8.6.0RC2
+
+- Core:
+ . Fixed incorrect internal pointer and foreach iterator positions when
+ compacting arrays with holes. (Weilin Du)
+ . Fix handling of references to typed properties during unserialization
+ of various internal classes. (ndossche, timwolla)
+ . Fixed OSS-Fuzz 532353396 (assertion failure with static type). (Girgias)
+ . Fix GH-23662 (Avoid NAN warning in print_r()). (CodedByManish)
+ . Fixed bug GH-23752 (Use scoped diagnostic suppression for the global
+ register declarations so the caller's -Wvolatile-register-var state is
+ restored). (yqtian-se)
+ . Fixed OSS-Fuzz #538730793 (Assertion failure when returning by-ref from
+ closure invoke). (ndossche)
+ . Fixed OSS-Fuzz #540904105 (ASSERT: ast->attr == T_CLASS_C). (ndossche)
- CLI
. Fix GH-22567 (Windows ZTS CLI SAPI should refresh its TSRMLS cache during
diff --cc ext/pcntl/pcntl.c
index 265b47e52dc,52beffd1c6e..38e6c4ae2bc
--- a/ext/pcntl/pcntl.c
+++ b/ext/pcntl/pcntl.c
@@@ -1390,11 -1429,10 +1410,9 @@@ void pcntl_signal_dispatch(void
/* Call php signal handler - Note that we do not report errors, and we ignore the return value */
call_user_function(NULL, NULL, handle, &retval, 2, params);
zval_ptr_dtor(&retval);
-#ifdef HAVE_STRUCT_SIGINFO_T
zval_ptr_dtor(¶ms[1]);
-#endif
+
- if (EG(exception)) {
- break;
- }
+ handler_threw = NULL != EG(exception);
}
}
diff --cc ext/zend_test/test.c
index 82bfa8d38e3,e1db746297f..4853e1f61e7
--- a/ext/zend_test/test.c
+++ b/ext/zend_test/test.c
@@@ -38,9 -41,9 +38,11 @@@
#include "zend_exceptions.h"
#include "zend_mm_custom_handlers.h"
#include "ext/uri/php_uri.h"
+#include "zend_observer.h"
+#include "test_decl.h"
+ #include <signal.h>
+
#if defined(HAVE_LIBXML) && !defined(PHP_WIN32)
# include <libxml/globals.h>
# include <libxml/parser.h>
diff --cc ext/zend_test/test_arginfo.h
index f3901c9b733,d605cff30ef..d01e3d036c7
Binary files differ
diff --cc ext/zend_test/test_decl.h
index 7e41dc18eab,00000000000..d2bc04df8f4
mode 100644,000000..100644
Binary files differ
diff --cc ext/zend_test/test_legacy_arginfo.h
index d9a7709ab22,00000000000..e12e72eb6d2
mode 100644,000000..100644
Binary files differ