#
de7ef3fa |
| 21-Oct-2024 |
Ilija Tovilo |
Fix lineno in function redeclaration error We were previously using the lineno of the first instruction, rather than the start of the function itself. Fixes GH-16509 Closes
Fix lineno in function redeclaration error We were previously using the lineno of the first instruction, rather than the start of the function itself. Fixes GH-16509 Closes GH-16531
show more ...
|
#
8fd09566 |
| 29-Jun-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Factor out common check for short-circuited ast
|
#
d5683376 |
| 29-Jun-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix OSS-Fuzz #69765: Yield reference to nullsafe chain You cannot return or yield a reference to a nullsafe chain. This was checked already in zend_compile_return but not yet in zend
Fix OSS-Fuzz #69765: Yield reference to nullsafe chain You cannot return or yield a reference to a nullsafe chain. This was checked already in zend_compile_return but not yet in zend_compile_yield. Closes GH-14716.
show more ...
|
#
1acd7a09 |
| 17-Apr-2024 |
Ilija Tovilo |
Add missing COMPILE_IGNORE_OTHER_FILES check for static calls Closes GH-13986
|
#
18cdfd3f |
| 07-Feb-2024 |
Ilija Tovilo |
Skip frameless functions with zend_execute_internal zend_execute_internal is used to intercept function calls. We must use the DO_FCALL opcode in this instance.
|
#
631bc816 |
| 06-Feb-2024 |
Ilija Tovilo |
Implement stackless internal function calls Co-authored-by: Dmitry Stogov <dmitry@zend.com> Closes GH-12461
|
#
fe064d7f |
| 19-Jan-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-13142: Undefined variable name is shortened when contains \0 Uses the new %S formatter and introduces the necessary changes and helpers.
|
#
ffc250d2 |
| 09-Jan-2024 |
Ilija Tovilo |
Add runtime type inference verification Co-authored-by: Dmitry Stogov <dmitry@zend.com> Closes GH-12930
|
#
d84ed03a |
| 13-Jan-2024 |
Máté Kocsis |
Improve error messages related to void/never return types of methods
|
#
012ec21d |
| 24-Dec-2023 |
Máté Kocsis |
Remove unused parameter from zend_compile_typename() The force_allow_null parameter is always false, therefore it is not needed. This simplification paves the road for deprecating implicitly
Remove unused parameter from zend_compile_typename() The force_allow_null parameter is always false, therefore it is not needed. This simplification paves the road for deprecating implicitly nullable parameter types.
show more ...
|
#
6aa70b57 |
| 10-Dec-2023 |
Arnaud Le Blanc |
WS
|
#
b1516d95 |
| 11-Nov-2023 |
Arnaud Le Blanc |
Clarify the stack limit exception message Make it clearer why the size is not exactly zend.max_allowed_stack_size
|
#
4ba56999 |
| 02-Oct-2023 |
Ilija Tovilo |
Fix invalid returned opcode for memoized expressions Closes GH-12345
|
#
011071a3 |
| 11-Sep-2023 |
Ilija Tovilo |
Improve invalid cpp modifier message The ZEND_MODIFIER_TARGET_CPP should really have been called _PARAM, but we shouldn't break API at this point. Fixes GH-12069 Closes GH-1
Improve invalid cpp modifier message The ZEND_MODIFIER_TARGET_CPP should really have been called _PARAM, but we shouldn't break API at this point. Fixes GH-12069 Closes GH-12175
show more ...
|
#
782ffd76 |
| 22-Aug-2023 |
Cristian Rodríguez |
Use a single version of strnlen (#12015) * Zend: Make zend_strnlen available for use outside zend_compile * exif: remove local php_strnlen, use zend_strnlen instead * main
Use a single version of strnlen (#12015) * Zend: Make zend_strnlen available for use outside zend_compile * exif: remove local php_strnlen, use zend_strnlen instead * main: remove local strnlen, use zend_strnlen instead * phar: remove local strnlen, use zend_strnlen
show more ...
|
#
7f1c3bf0 |
| 18-Aug-2023 |
ju1ius |
Adds support for DNF types in internal functions and properties (#11969) Note that this does not add support for items generated by gen_stubs, only for items registered dynamically via
Adds support for DNF types in internal functions and properties (#11969) Note that this does not add support for items generated by gen_stubs, only for items registered dynamically via the Zend API. Closes GH-10120
show more ...
|
#
db4dba67 |
| 09-Aug-2023 |
Ilija Tovilo |
Move opnum_start for goto for clarification (#11911) opnum_start denotes the start of the ZEND_FREE block of skipped consuming opcodes. Storing the number before zend_compile_expr(..., l
Move opnum_start for goto for clarification (#11911) opnum_start denotes the start of the ZEND_FREE block of skipped consuming opcodes. Storing the number before zend_compile_expr(..., label_ast) makes it seem like it denotes the start of the label block. However, label_ast must only be a zval string AST, and as such never results in an actual opcode.
show more ...
|
#
1057cce1 |
| 04-Jul-2023 |
Ilija Tovilo |
Always memoize calls in lhs of coalesce assignment We don't want to invoke calls twice, even if they are considered "variables", i.e. might be writable if returning a reference. Function
Always memoize calls in lhs of coalesce assignment We don't want to invoke calls twice, even if they are considered "variables", i.e. might be writable if returning a reference. Function calls behave the same in all BP contexts so they don't need to be invoked twice. The singular exception to this is nullsafe coalesce in isset/empty, because it needs to return false/true respectively when short-circuited. However, since nullsafe calls are not allwed in write context we may ignore this problem. Closes GH-11592
show more ...
|
#
3e2dbbf9 |
| 07-Jul-2023 |
George Peter Banyard |
Add support for deprecating class constants
|
#
72a163aa |
| 07-Jul-2023 |
Arnaud Le Blanc |
Add stack limit check in zend_eval_const_expr() (#11424)
|
#
49ef6e20 |
| 29-Jun-2023 |
Tim Düsterhus |
RFC: Add #[Override] attribute (#9836) * Add #[Override] attribute * Move #[\Override] tests into Zend/tests/attributes/override/ * Check `check_only` before removing `ZEND
RFC: Add #[Override] attribute (#9836) * Add #[Override] attribute * Move #[\Override] tests into Zend/tests/attributes/override/ * Check `check_only` before removing `ZEND_ACC_OVERRIDE` * NEWS/UPGRADING for #[\Override]
show more ...
|
#
68ef3938 |
| 21-Jun-2023 |
Ilija Tovilo |
Fix missing "Optional parameter before required" deprecation on union null type The check would only work for the ?type syntax, but not type|null. Switch to a check during type compilat
Fix missing "Optional parameter before required" deprecation on union null type The check would only work for the ?type syntax, but not type|null. Switch to a check during type compilation instead. Fixes GH-11488 Closes GH-11497
show more ...
|
#
fae42c8b |
| 21-Jun-2023 |
Ilija Tovilo |
Fix assertion violation for invalid class const objects in const expressions (#11458) Fixes oss-fuzz #59764
|
#
d5ad7510 |
| 08-Jun-2023 |
George Peter Banyard |
More usage of known zend_str instead of C string (#11381)
|
#
79d024ac |
| 07-Jun-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Allow final modifier when using a method from a trait (#11394) Fixes GH-11388. Following https://wiki.php.net/rfc/horizontalreuse which introduced traits, this should be allowed
Allow final modifier when using a method from a trait (#11394) Fixes GH-11388. Following https://wiki.php.net/rfc/horizontalreuse which introduced traits, this should be allowed. The implementation was refactored in 3f8c729. That commit is the first time the "final" check appears AFAICT, but no reason was given for why. That commit seems to have landed in 5.4.11 and the NEWS for that version doesn't seem to mention something relevant to the behaviour change. This patch removes the restriction of the final modifier. Closes GH-11394.
show more ...
|