History log of /PHP-8.3/Zend/Optimizer/zend_func_info.c (Results 1 – 25 of 38)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 42cbace1 16-Jan-2024 Ilija Tovilo

Fix range inference since "proper-range-semantics" RFC

* Arrays returned from range are never empty
* When step is a double value representable by a long, it is coerced implicitly.

Fix range inference since "proper-range-semantics" RFC

* Arrays returned from range are never empty
* When step is a double value representable by a long, it is coerced implicitly.
As such, passing a double step no longer guarantees that the result is a
non-int array.

Closes GH-13166

show more ...


# 6bf40413 02-Nov-2023 Dmitry Stogov

Backport fix for HASH/PACKED array inference through MAY_BE_ARRAY_EMPTY flag (#12591)

* Fixed HASH/PACKED array inference through MAY_BE_ARRAY_EMPTY flag

This fixes GH-12527

Backport fix for HASH/PACKED array inference through MAY_BE_ARRAY_EMPTY flag (#12591)

* Fixed HASH/PACKED array inference through MAY_BE_ARRAY_EMPTY flag

This fixes GH-12527

* typo

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, php-8.2.0beta2, php-8.1.9, php-8.0.22, php-8.1.9RC1, php-8.2.0beta1, php-8.0.22RC1, php-8.0.21, php-8.1.8, php-8.2.0alpha3, php-8.1.8RC1, php-8.2.0alpha2, php-8.0.21RC1, php-8.0.20, php-8.1.7, php-8.2.0alpha1, php-7.4.30, php-8.1.7RC1, php-8.0.20RC1, php-8.1.6, php-8.0.19, php-8.1.6RC1, php-8.0.19RC1
# b0ab5d0f 15-Apr-2022 Nikita Popov

Don't set ce for by-ref return type

For the case where we upgrade a prototype to a possible by-ref
return from an inheriting method.


Revision tags: php-8.0.18, php-8.1.5, php-7.4.29, php-8.1.5RC1, php-8.0.18RC1, php-8.1.4, php-8.0.17, php-8.1.4RC1, php-8.0.17RC1, php-8.1.3, php-8.0.16, php-7.4.28, php-8.1.3RC1, php-8.0.16RC1, php-8.1.2, php-8.0.15, php-8.1.2RC1, php-8.0.15RC1, php-8.0.14, php-8.1.1, php-7.4.27, php-8.1.1RC1, php-8.0.14RC1, php-7.4.27RC1, php-8.1.0, php-8.0.13, php-7.4.26, php-7.3.33, php-8.1.0RC6, php-7.4.26RC1, php-8.0.13RC1, php-8.1.0RC5, php-7.3.32, php-7.4.25, php-8.0.12, php-8.1.0RC4
# f0cf9992 11-Oct-2021 Nikita Popov

Preserve key/value type invariant in range() type inference

Don't set PACKED key type if no value type is set.

Fixes oss-fuzz 6718410667458560.


Revision tags: php-8.0.12RC1
# 0b5d62e3 06-Oct-2021 Dmitry Stogov

Fixed type inference that may cause JIT failure

PHP allows to override a method that returns non-reference with a method
that returns a reference. This mean that we cannot use prototypes

Fixed type inference that may cause JIT failure

PHP allows to override a method that returns non-reference with a method
that returns a reference. This mean that we cannot use prototypes to
predict return types of a child functions.

show more ...


Revision tags: php-7.4.25RC1, php-8.1.0RC3, php-8.0.11
# a846547e 21-Sep-2021 Nikita Popov

Fix range() return type inference for undef operand

This results in a long range.


Revision tags: php-7.4.24, php-7.3.31
# 53d5420d 20-Sep-2021 George Peter Banyard

Use more appropriate types in Optimizer

Mainly using zend_result and bool instead of int


Revision tags: php-8.1.0RC2, php-7.4.24RC1, php-8.0.11RC1, php-8.1.0RC1
# 9b170a41 31-Aug-2021 Nikita Popov

Mark private function as static


# c19e4b99 30-Aug-2021 Máté Kocsis

Generate optimizer func info from stubs for ext/standard - part 3 (#7426)


# 8e6e9838 30-Aug-2021 Máté Kocsis

Add support for generating MAY_BE_ARRAY_OF_REF func info flag (#7416)


# b49d340f 27-Aug-2021 Máté Kocsis

Generate optimizer func info from stubs for ext/standard - part 2 (#7414)


# 51a504c8 27-Aug-2021 Nikita Popov

Avoid string copy in get_cfg_var()

basic_functions.c already has a macro for returning an ini
value to userland, so make use of it for get_cfg_var() as well,
after generalizing it to

Avoid string copy in get_cfg_var()

basic_functions.c already has a macro for returning an ini
value to userland, so make use of it for get_cfg_var() as well,
after generalizing it to not write to return_value in particular.

show more ...


# 1ce81b6b 27-Aug-2021 Máté Kocsis

Generate optimizer func info from stubs for ext/standard - part 1 (#7413)


# fdc60829 26-Aug-2021 Máté Kocsis

Generate optimizer func info from stubs for various extensions (#7409)

ext/hash, ext/iconv, ext/mbstring, ext/xml, ext/zlib


# 68946bdd 26-Aug-2021 Máté Kocsis

Generate optimizer func info from stubs for ext/gd and ext/pgsql (#7408)


# 17ccabc6 26-Aug-2021 Máté Kocsis

Generate optimizer func info from stubs for ext/curl, ext/mysqli, ext/pcre (#7407)


# 765aec86 26-Aug-2021 Máté Kocsis

Generate optimizer func info from stubs for ext/sodium (#7404)


# 2d248c80 25-Aug-2021 Máté Kocsis

Generate optimizer func info from stubs for ext/date (#7403)


# 50f31829 25-Aug-2021 Máté Kocsis

Generate optimizer func info from stubs for a few extensions - part 2 (#7401)

ext/bcmath, ext/fileinfo, ext/filter, ext/gettext, ext/session


# bdfe0ab5 24-Aug-2021 Máté Kocsis

Generate Zend, ext/spl and ext/json optimizer func info from stubs

Closes GH-7397


Revision tags: php-7.4.23, php-8.0.10
# b1822899 24-Aug-2021 Máté Kocsis

Add support for generating optimizer function info from stubs (#7367)


Revision tags: php-7.3.30
# 8c67abb6 23-Aug-2021 Nikita Popov

Drop gz aliases from func info

Func info does not need to include function aliases, we'll look
up based on the primary function name.


Revision tags: php-8.1.0beta3
# 6e20f0f3 16-Aug-2021 Nikita Popov

Returned interned string from fgetc()

Make use of single-character interned strings.


# a4c2fb14 16-Aug-2021 Nikita Popov

Fix func info for constant()/get_defined_constants()

As pointed out on GH-7367, these have not been adjusted for
object constant support.

Now the only thing the type info specif

Fix func info for constant()/get_defined_constants()

As pointed out on GH-7367, these have not been adjusted for
object constant support.

Now the only thing the type info specifies is that array of ref
is not possible.

show more ...


Revision tags: php-8.0.10RC1, php-7.4.23RC1, php-8.1.0beta2, php-8.0.9, php-7.4.22, php-8.1.0beta1, php-7.4.22RC1, php-8.0.9RC1, php-8.1.0alpha3, php-7.4.21, php-7.3.29, php-8.0.8, php-8.1.0alpha2, php-7.4.21RC1, php-8.0.8RC1, php-8.1.0alpha1, php-8.0.7, php-7.4.20, php-8.0.7RC1, php-7.4.20RC1, php-8.0.6, php-7.4.19
# 7b85d3bb 28-Apr-2021 Nikita Popov

Add support for verifying optimizer func info

This is guarded by -DZEND_VERIFY_FUNC_INFO=1. Enable this on the
variation job.

Closes GH-6924.


12