1
0
mirror of https://github.com/php/php-src.git synced 2026-04-29 03:03:26 +02:00
Commit Graph

5337 Commits

Author SHA1 Message Date
Ilija Tovilo e66e9059df Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Fix dumping function signature with dynamic class const lookup default argument
2025-12-08 16:19:53 +01:00
Ilija Tovilo 61eca669d9 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix dumping function signature with dynamic class const lookup default argument
2025-12-08 16:19:35 +01:00
Ilija Tovilo 26c0cbd93c Fix dumping function signature with dynamic class const lookup default argument
Fixes OSS-Fuzz #465488618
Closes GH-20651
2025-12-08 16:19:06 +01:00
David Carlier 01bca99955 Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Fix GH-20483: ASAN stack overflow with small fiber.stack_size INI value.
2025-11-15 17:21:20 +00:00
David Carlier e3c23015a0 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix GH-20483: ASAN stack overflow with small fiber.stack_size INI value.
2025-11-15 17:21:08 +00:00
David Carlier d2c5b3b25b Fix GH-20483: ASAN stack overflow with small fiber.stack_size INI value.
close GH-20495
2025-11-15 17:20:29 +00:00
Ilija Tovilo 926f44d712 Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Correctly handle extra named args for magic call in debug_backtrace_get_args()
2025-11-12 00:33:37 +01:00
Ilija Tovilo eee5dcccf8 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Correctly handle extra named args for magic call in debug_backtrace_get_args()
2025-11-12 00:33:28 +01:00
Ilija Tovilo b620d9d228 Correctly handle extra named args for magic call in debug_backtrace_get_args()
Closes GH-20454
2025-11-12 00:33:02 +01:00
Niels Dossche 5087cf3001 Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Fix GH-20435: SensitiveParameter doesn't work for named argument passing to variadic parameter
  Fix GH-20442: Phar does not respect case-insensitiveness of __halt_compiler() when reading stub
2025-11-10 22:44:16 +01:00
Niels Dossche 3e715d3361 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix GH-20435: SensitiveParameter doesn't work for named argument passing to variadic parameter
  Fix GH-20442: Phar does not respect case-insensitiveness of __halt_compiler() when reading stub
2025-11-10 22:43:59 +01:00
Niels Dossche 33a2acba44 Fix GH-20435: SensitiveParameter doesn't work for named argument passing to variadic parameter
Closes GH-20436.
2025-11-10 22:43:17 +01:00
Ilija Tovilo a69238119d Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  [skip ci] Relax Zend/tests/concat_003.phpt
2025-11-06 14:18:45 +01:00
Ilija Tovilo ce4001df17 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  [skip ci] Relax Zend/tests/concat_003.phpt
2025-11-06 14:18:39 +01:00
Ilija Tovilo b8fbf20c3b Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  [skip ci] Relax Zend/tests/concat_003.phpt
2025-11-06 14:18:33 +01:00
Ilija Tovilo d03cf27afe Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  [skip ci] Relax Zend/tests/concat_003.phpt
2025-11-06 14:18:27 +01:00
Ilija Tovilo f4bd908259 [skip ci] Relax Zend/tests/concat_003.phpt
This test frequently fails in CI, where it took 1.3s, including a repeat due to
being marked as flaky. Bump this limit with a generous margin.
2025-11-06 14:15:56 +01:00
Daniel Scherzer e5c6456d37 Fix GH-20377: emit assignment for all final promoted properties (#20378)
Previously, the assignment op line was only emitted when one of the other flags
allowed for promoted properties (visibility, set visibility, or readonly) was
also used, or when the property had hooks. The property was still added to the
class, but the magical assignment `$this->prop = $prop` was missing. Add that
assignment even when no visibility is explicitly specified, and a test to
confirm the fix.
2025-11-03 14:36:57 -08:00
Ilija Tovilo 80a6adcbb0 Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Fix EG(current_execute_data) introduced in 1292037
2025-10-31 17:36:24 +01:00
Ilija Tovilo a5e1baf6b8 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix EG(current_execute_data) introduced in 1292037
2025-10-31 17:36:15 +01:00
Ilija Tovilo 5518165499 Fix EG(current_execute_data) introduced in 1292037
Fixes OSS-Fuzz #456317305
2025-10-31 17:34:25 +01:00
Gina Peter Banyard 9a1b8a785d Fix GH-20194: null offset deprecation not emitted for writes (#20238)
Based on a patch from @ndossche
2025-10-29 18:36:10 +00:00
Ilija Tovilo 1a74e9b549 Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Fix stale EG(opline_before_exception) pointer through eval
2025-10-27 16:53:08 +01:00
Ilija Tovilo aa7265bb7b Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix stale EG(opline_before_exception) pointer through eval
2025-10-27 16:52:49 +01:00
Ilija Tovilo 12920370e1 Fix stale EG(opline_before_exception) pointer through eval
Fixes GH-20183
Closes GH-20184
2025-10-27 16:48:46 +01:00
Ilija Tovilo a1911ad3ef Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Fix parent hook call with named args
2025-10-27 16:39:02 +01:00
Ilija Tovilo b150eb35d4 Fix parent hook call with named args
Fixes GH-20270
Closes GH-20271
2025-10-27 16:38:08 +01:00
Ilija Tovilo fbf11f9378 Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Fix accessing of overridden private property in get_object_vars()
2025-10-20 17:18:29 +02:00
Ilija Tovilo f5fc755379 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix accessing of overridden private property in get_object_vars()
2025-10-20 17:18:00 +02:00
Ilija Tovilo 02c67b47f7 Fix accessing of overridden private property in get_object_vars()
Fixes GH-20177
Closes GH-20182
2025-10-20 17:17:21 +02:00
Ilija Tovilo 19a1600868 Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Don't bail when closing resources on shutdown
2025-10-14 22:20:00 +02:00
Ilija Tovilo 55f4d4c909 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Don't bail when closing resources on shutdown
2025-10-14 22:19:46 +02:00
Ilija Tovilo e6e39e680e Don't bail when closing resources on shutdown
Fixes GH-19844
Closes GH-19849
2025-10-14 22:19:17 +02:00
Shivam Mathur 2f2fb1fbf1 Skip lc_ctype_inheritance.phpt on macos 15+ 2025-10-13 20:48:24 +00:00
Ilija Tovilo 5a63f7a54b Fix missing new Foo(...) error in constant expressions
Though first-class callables are now supported in constant expressions, they
remain unsupported for the new expression.

Fixes GH-20113
Closes GH-20115
2025-10-09 19:09:01 +02:00
Niels Dossche d64e0ff5f3 Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Fix GH-20085: Assertion failure when combining lazy object get_properties exception with foreach loop
2025-10-08 17:34:53 +02:00
Niels Dossche 27035eb01e Fix GH-20085: Assertion failure when combining lazy object get_properties exception with foreach loop
In this test, we will loop once, and then replace the object with an
instance that'll throw on property construction in Z_OBJPROP_P() in
the ZEND_FE_FETCH_RW VM handler.
Since at that point `pos >= fe_ht->nNumUsed`, we exit via
`fe_fetch_w_exit` without checking for an exception, causing incorrect
continuation of the code and an eventual assertion failure.

To solve this, we perform an exception check at the end of the
iteration. This should be sufficient to guarantee the exception is
checked in time as failure of get_properties() via Z_OBJPROP_P() will
always result in an empty hash table.
This should also be more efficient than the alternative fix that checks
for an exception right after Z_OBJPROP_P() as that would be executed at
each iteration.

Closes GH-20098.
2025-10-08 17:34:38 +02:00
Niels Dossche 544617a3fa Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Fix GH-20073: Assertion failure in WeakMap offset operations on reference
2025-10-07 20:17:07 +02:00
Niels Dossche b47c3b633d Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix GH-20073: Assertion failure in WeakMap offset operations on reference
2025-10-07 20:17:00 +02:00
Niels Dossche b16761ec11 Fix GH-20073: Assertion failure in WeakMap offset operations on reference
Closes GH-20078.
2025-10-07 20:16:41 +02:00
Nicolas Grekas fc353966f3 Revert deprecation of __sleep and __wakeup (#19966) 2025-10-06 10:30:27 +02:00
Ilija Tovilo 16a8591f28 Fix fatal error during sccp shift eval
Avoid returning early in this function, as other checks might still be needed to
verify whether the given function can procude an error.

Fixes oss-fuzz #447521098
Closes GH-19972
2025-09-30 01:16:40 +02:00
Gina Peter Banyard 320fe2975b core: Warn when coercing NAN to other types
RFC: https://wiki.php.net/rfc/warnings-php-8-5#coercing_nan_to_other_types

Closes GH-19573
2025-09-23 11:16:51 +01:00
Gina Peter Banyard d27e1e1723 core: Add new test for coercions from NAN 2025-09-23 11:14:58 +01:00
Gina Peter Banyard b4ed215299 core: Warn when non-representable floats are coerced to int (#19760)
RFC: https://wiki.php.net/rfc/warnings-php-8-5#casting_out_of_range_floats_to_int
2025-09-21 23:53:16 +01:00
Niels Dossche 1f6ac30769 Allow empty statements before declare(strict_types)
Fixes GH-19719
Closes GH-19859
2025-09-21 19:36:59 +02:00
Ilija Tovilo 05055869ee Merge branch 'PHP-8.4'
* PHP-8.4:
  Fix incorrect HASH_FLAG_HAS_EMPTY_IND flag on userland array
2025-09-16 13:01:19 +02:00
Ilija Tovilo 1da41afdf3 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix incorrect HASH_FLAG_HAS_EMPTY_IND flag on userland array
2025-09-16 13:00:56 +02:00
Ilija Tovilo f045716288 Fix incorrect HASH_FLAG_HAS_EMPTY_IND flag on userland array
Fixes GH-19839
Closes GH-19851
2025-09-16 13:00:03 +02:00
Niels Dossche d6300a3065 Merge branch 'PHP-8.4'
* PHP-8.4:
  Fix GH-19653: Closure named argument unpacking between temporary closures can cause a crash
2025-09-14 22:11:22 +02:00