History log of /PHP-8.1/ext/reflection/php_reflection.c (Results 1 – 25 of 927)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# f78d1d0d 12-Aug-2023 Ilija Tovilo

Fix segfault in format_default_value due to unexpected enum/object

Evaluating constants at comptime can result in arrays that contain objects. This
is problematic for printing the defaul

Fix segfault in format_default_value due to unexpected enum/object

Evaluating constants at comptime can result in arrays that contain objects. This
is problematic for printing the default value of constant ASTs containing
objects, because we don't actually know what the constructor arguments were.
Avoid this by not propagating array constants.

Fixes GH-11937
Closes GH-11947

show more ...


# bc421791 11-Jul-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix GH-10914: OPCache with Enum and Callback functions results in segmentation fault

See linked issue for analysis.

Closes GH-11675.


# bdf2f722 03-Mar-2023 Remi Collet

remove assert raising strange behavior with GCC 10


# 8d1c0a14 22-Feb-2023 Daniil Gentili

Fix segfault when using ReflectionFiber (fixes #10439)

Closes GH-10478


# ae164716 19-Feb-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix GH-10623: ReflectionFunction::getClosureUsedVariables() returns empty array in presence of variadic arguments

The code was missing the handling for the RECV_VARIADIC instruction.
Add

Fix GH-10623: ReflectionFunction::getClosureUsedVariables() returns empty array in presence of variadic arguments

The code was missing the handling for the RECV_VARIADIC instruction.
Additional regression test for GH-10623

Co-authored-by: Fabio Ivona <fabio.ivona@defstudio.it>

show more ...


# 1435fc62 02-Sep-2022 Ilija Tovilo

Private method incorrectly marked as "overwrites" in reflection

Fix GH-9409
Closes GH-9469


# 93f11d84 02-Sep-2022 Nicolas Grekas

Fix GH-8932: Provide a way to get the called-scope of closures (#9299)

Co-authored-by: Christoph M. Becker <cmbecker69@gmx.de>


# 565a416e 28-Jul-2022 Ilija Tovilo

Fix attribute target validation on fake closures

Fixes GH-8982
Closes GH-9173


# c650e67c 07-Jul-2022 Pierrick Charron

Fixed bug GH-8943 Reflection::getModifiersNames() with readonly modifier


# 0ae6a675 12-Jun-2022 George Peter Banyard

Add true as a type (#8326)

RFC: https://wiki.php.net/rfc/true-type


Revision tags: php-8.1.7RC1
# ddc0b490 10-Mar-2022 Ilija Tovilo

Allow arbitrary const expressions in backed enums

Closes GH-7821
Closes GH-8190
Closes GH-8418


# b40ae808 07-Jun-2022 George Peter Banyard

Convert iterable into an internal alias for Traversable|array (#7309)

This does a compile time transformation of ``iterable`` into ``Traversable|array`` which simplifies some of the LSP vari

Convert iterable into an internal alias for Traversable|array (#7309)

This does a compile time transformation of ``iterable`` into ``Traversable|array`` which simplifies some of the LSP variance handling.

The arginfo generation script from stubs is updated to produce a union type when it encounters the type ``iterable``
Extension functions which do not regenerate the arginfo, or write them manually are still supported by mimicking the compile time transformation while registering the function.

Type Reflection is preserved for single ``iterable`` (and ``?iterable``) to produce a ReflectionNamedType with name ``iterable``, however usage of ``iterable`` in union types will be converted to ``array|Traversable``

show more ...


# 7850c103 16-May-2022 Máté Kocsis

Add support for readonly classes (#7305)

RFC: https://wiki.php.net/rfc/readonly_classes


# f590782b 04-May-2022 Ollie Read

Add ReflectionMethod::hasPrototype method

Closes GH-8487.


# be11bcb0 05-May-2022 Nicolas Grekas

Add ReflectionFunction::isAnonymous()

Closes GH-8499.


# fc04a6eb 03-May-2022 Máté Kocsis

Throw when calling ReflectionAttribute::__construct()

ReflectionAttribute::__construct() accepted any number of parameters until now, because parameter validation was missing. Even though th

Throw when calling ReflectionAttribute::__construct()

ReflectionAttribute::__construct() accepted any number of parameters until now, because parameter validation was missing. Even though this was unlikely to be an issue in practice (since the method is private), the problem is fixed by always throwing an exception.

show more ...


# ef5478b8 03-May-2022 Máté Kocsis

Reorder param parsing and reflection object retrieval


# 6039c07a 08-Apr-2022 George Peter Banyard

Allow ``null`` and ``false`` as standalone types (#7546)

RFC: https://wiki.php.net/rfc/null-standalone-type

Also a drive-by consistency fix for error messages.


Revision tags: php-8.1.4RC1, php-8.1.3
# 7e6558ed 12-Jan-2022 Dmitry Stogov

Fix ext/zend_test/tests/observer_bug81430_2.phpt failure


Revision tags: php-8.1.2RC1, php-8.1.0, php-7.3.33
# 90b7bde6 03-Nov-2021 Dmitry Stogov

Use more compact representation for packed arrays.

- for packed arrays we store just an array of zvals without keys.
- the elements of packed array are accessible throuf as ht->arPacked[

Use more compact representation for packed arrays.

- for packed arrays we store just an array of zvals without keys.
- the elements of packed array are accessible throuf as ht->arPacked[i]
instead of ht->arData[i]
- in addition to general ZEND_HASH_FOREACH_* macros, we introduced similar
familied for packed (ZEND_HASH_PACKED_FORECH_*) and real hashes
(ZEND_HASH_MAP_FOREACH_*)
- introduced an additional family of macros to access elements of array
(packed or real hashes) ZEND_ARRAY_ELEMET_SIZE, ZEND_ARRAY_ELEMET_EX,
ZEND_ARRAY_ELEMET, ZEND_ARRAY_NEXT_ELEMENT, ZEND_ARRAY_PREV_ELEMENT
- zend_hash_minmax() prototype was changed to compare only values

Because of smaller data set, this patch may show performance improvement
on some apps and benchmarks that use packed arrays. (~1% on PHP-Parser)

TODO:
- sapi/phpdbg needs special support for packed arrays (WATCH_ON_BUCKET).
- zend_hash_sort_ex() may require converting packed arrays to hash.

show more ...


# 088e5677 06-Jun-2022 Dmitry Stogov

Fix memory leak

This fixes oss-fuzz #47791


# 1944c14c 28-Apr-2022 Ilija Tovilo

Fix ReflectionProperty::__toString() of properties containing enums

Fix GH-8444


# d0f1b987 22-Apr-2022 Ollie Read

Fix GH-8421: Attributes that target functions are not valid for anonymous functions defined within a method

Closes GH-8424


# 0d266a24 16-Feb-2022 Christoph M. Becker

Fix GH-8080: ReflectionClass::getConstants() depends on def. order

When we need to evaluate constant ASTs, we always have to do that in
the scope where the constant has been defined, whi

Fix GH-8080: ReflectionClass::getConstants() depends on def. order

When we need to evaluate constant ASTs, we always have to do that in
the scope where the constant has been defined, which may be a parent
of the `ReflectionClass`'s scope.

Closes GH-8106.

show more ...


# f7c3f6e7 12-Jan-2022 Dmitry Stogov

Fix ext/zend_test/tests/observer_bug81430_2.phpt failure


12345678910>>...38