#
99fa740a |
| 06-Jun-2023 |
George Peter Banyard |
Use common function for TypeError on illegal offset access (#10544) This merges all usages of emitting an offset TypeError into a new ZEND_API function zend_illegal_container_offset(cons
Use common function for TypeError on illegal offset access (#10544) This merges all usages of emitting an offset TypeError into a new ZEND_API function zend_illegal_container_offset(const zend_string* container, const zval *offset, int type); Where the container should represent the type on which the access is attempted (e.g. string, array) The offset zval that is used, where the error message will display its type The type of access, which should be a BP_VAR_* constant, to get special message for isset/empty/unset
show more ...
|
Revision tags: php-8.2.0RC1, php-8.1.10, php-8.0.23, php-8.0.23RC1, php-8.1.10RC1, php-8.2.0beta3 |
|
#
0b1d750d |
| 11-Aug-2022 |
Ilija Tovilo |
Allow arbitrary expressions in static variable initializer Closes GH-9301
|
#
414f71a9 |
| 16-Apr-2023 |
Máté Kocsis |
Typed class constants (#10444) RFC: https://wiki.php.net/rfc/typed_class_constants Co-Authored-By: Ben <7127204+moliata@users.noreply.github.com> Co-Authored-By: Bob Weinand <31
Typed class constants (#10444) RFC: https://wiki.php.net/rfc/typed_class_constants Co-Authored-By: Ben <7127204+moliata@users.noreply.github.com> Co-Authored-By: Bob Weinand <3154871+bwoebi@users.noreply.github.com> Co-Authored-By: Ilija Tovilo <ilija.tovilo@me.com>
show more ...
|
#
0c65b396 |
| 10-Apr-2023 |
Dmitry Stogov |
Allow FETCH_OBJ_W and FETCH_STATIC_PROP_W to return INDIRECT/UNDEF zval for uninitialized typed properties (#11048)
|
#
ede8adb2 |
| 06-Apr-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-11016: Heap buffer overflow in ZEND_ADD_ARRAY_UNPACK_SPEC_HANDLER (#11021) Not enough space was reserved for the packed resulting array because of some confusion in the meaning of
Fix GH-11016: Heap buffer overflow in ZEND_ADD_ARRAY_UNPACK_SPEC_HANDLER (#11021) Not enough space was reserved for the packed resulting array because of some confusion in the meaning of nr of used slots vs nr of elements. Co-authored-by: Ilija Tovilo <ilija.tovilo@me.com>
show more ...
|
#
fdbea4f3 |
| 03-Mar-2023 |
Ilija Tovilo |
Add GC_DTOR/GC_DTOR_NO_REF macros
|
#
24acb4f1 |
| 02-Mar-2023 |
Dmitry Stogov |
Delay destructor for zend_std_write_property
|
#
915b2837 |
| 16-Feb-2023 |
Dmitry Stogov |
Delay freeing of overwritten values in assignments Fixes GH-10168
|
#
f42992f5 |
| 03-Apr-2023 |
Máté Kocsis |
Remove name field from the zend_constant struct (#10954) As global constant names are case-sensitive now, we don't have to store them separately above the constant table.
|
#
d7c351ea |
| 26-Mar-2023 |
George Peter Banyard |
Propagate UTF-8 flag during Rope operations (#10915)
|
#
1be99fae |
| 04-Mar-2023 |
Kamil Tekiela |
Fix strlen error message param name
|
#
d5c649b3 |
| 23-Feb-2023 |
Max Kellermann |
zend_compiler, ...: use `uint8_t` instead of `zend_uchar` (#10621) `zend_uchar` suggests that the value is an ASCII character, but here, it's about very small integers. This is misleadi
zend_compiler, ...: use `uint8_t` instead of `zend_uchar` (#10621) `zend_uchar` suggests that the value is an ASCII character, but here, it's about very small integers. This is misleading, so let's use a C99 integer instead. On all architectures currently supported by PHP, `zend_uchar` and `uint8_t` are identical. This change is only about code readability.
show more ...
|
#
413844d6 |
| 18-Feb-2023 |
Max Kellermann |
Zend/zend_types.h: deprecate zend_bool, zend_intptr_t, zend_uintptr_t (#10597) These types are standard C99. For compatibility with out-of-tree extensions, keep the typedefs in
Zend/zend_types.h: deprecate zend_bool, zend_intptr_t, zend_uintptr_t (#10597) These types are standard C99. For compatibility with out-of-tree extensions, keep the typedefs in main/php.h.
show more ...
|
#
81f3fcd5 |
| 16-Feb-2023 |
Ilija Tovilo |
Revert "Remove useless UNEXPECTED around RETURN_VALUE_USED in specialized RETVAL handler" This reverts commit 5b801612cb33d238a5dafbe04374dadc6e3a9f35.
|
#
7b68ff46 |
| 16-Feb-2023 |
Ilija Tovilo |
Revert "Fix GH-10168: heap-buffer-overflow at zval_undefined_cv" This reverts commit 71ddede5655fe654002ae18af6a18e033f717287.
|
#
641fe23e |
| 08-Feb-2023 |
Marcos Marcolin <48370677+marcosmarcolin@users.noreply.github.com> |
Improve illegal offset error messages (#10504) Co-authored-by: Marcos Marcolin <marcos@ixcsoft.com.br>
|
#
71ddede5 |
| 06-Feb-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-10168: heap-buffer-overflow at zval_undefined_cv The problem is that we're using the variable_ptr in the opcode handler *after* it has already been destroyed. The solution is to c
Fix GH-10168: heap-buffer-overflow at zval_undefined_cv The problem is that we're using the variable_ptr in the opcode handler *after* it has already been destroyed. The solution is to create a specialised version of zend_assign_to_variable which takes in two destination zval pointers. Closes GH-10524
show more ...
|
#
99b86141 |
| 02-Feb-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Introduce convenience macros for copying flags that hold when concatenating two strings This abstracts away, and cleans up, the flag handling for properties of strings that hold when con
Introduce convenience macros for copying flags that hold when concatenating two strings This abstracts away, and cleans up, the flag handling for properties of strings that hold when concatenating two strings if they both hold that property. (These macros also work with simply copies of strings because a copy of a string can be considered a concatenation with the empty string.) This gets rid of some branches and some repetitive code, and leaves room for adding more flags like these in the future.
show more ...
|
#
35a36b13 |
| 02-Feb-2023 |
Ilija Tovilo |
Fix comp-time and constant evaluation of dynamic class constant fetch Fixes GH-10486 Fixes oss-fuzz #55436 Fixes oss-fuzz #55472 Closes GH-10487
|
#
64127b66 |
| 29-Jan-2023 |
George Peter Banyard |
Concatenating two valid UTF-8 strings produces a valid UTF-8 string The UTF-8 valid flag needs to be copied upon interning, otherwise strings that are concatenated at compile time lose t
Concatenating two valid UTF-8 strings produces a valid UTF-8 string The UTF-8 valid flag needs to be copied upon interning, otherwise strings that are concatenated at compile time lose this information. However, if previously this string was interned without the flag it is not added E.g. in the case the string is an existing class name. Co-authored-by: Niels Dossche <7771979+nielsdos@users.noreply.github.com>
show more ...
|
#
02bd52b5 |
| 20-Oct-2022 |
Ilija Tovilo |
Implement dynamic class const fetch https://wiki.php.net/rfc/dynamic_class_constant_fetch Closes GH-9793
|
#
7936c808 |
| 23-Jan-2023 |
Máté Kocsis |
Fix GH-8329 Print true/false instead of bool in error and debug messages (#8385)
|
#
95ccce3c |
| 20-Jan-2023 |
Arnaud Le Blanc |
Merge branch 'PHP-8.2' * PHP-8.2: [ci skip] NEWS [ci skip] NEWS Fix GH-10248: Assertion `!(zval_get_type(&(*(property))) == 10)' failed.
|
#
c2e77f9c |
| 20-Jan-2023 |
Arnaud Le Blanc |
Merge branch 'PHP-8.1' into PHP-8.2 * PHP-8.1: [ci skip] NEWS Fix GH-10248: Assertion `!(zval_get_type(&(*(property))) == 10)' failed.
|
#
7d3a7efd |
| 18-Jan-2023 |
Christoph M. Becker |
Merge branch 'PHP-8.2' * PHP-8.2: Fix incorrect check condition in ZEND_YIELD
|