mirror of
https://github.com/php/php-src.git
synced 2025-08-15 21:48:51 +02:00
![]() - Declared compatibility expectations of stub files are now enforced by a ZEND_STATIC_ASSERT call at the top of arginfo files - Property registration for PHP 7 is fixed: function zend_declare_property_ex() is used again instead of zend_declare_typed_property(). This has been a regression since I added support for exposing doc comments. - As a defensive measure, deep cloning is performed before newer features (type declarations, attributes etc.) are discarded before generating legacy arginfo files. Until now, some of the objects were forgotten to be taken care of. These omissions may have resulted in some weird bugs in theory (but probably they didn't have much impact in practice). - PHP version related conditions inside *non-legacy arginfo files* used to possibly check for the 70000 version iD until now if compatibility with PHP 7.0 was declared in a stub. This was not 100% correct, since non-legacy arginfo files are only for PHP 8.0+. Now, I made sure that at least PHP version ID 80000 is used in the preprocessor conditions. The solution was a bit tricky though... |
||
---|---|---|
.. | ||
tests | ||
config.m4 | ||
config.w32 | ||
fiber.c | ||
fiber.h | ||
fiber.stub.php | ||
fiber_arginfo.h | ||
iterators.c | ||
iterators.h | ||
iterators.stub.php | ||
iterators_arginfo.h | ||
object_handlers.c | ||
object_handlers.h | ||
object_handlers.stub.php | ||
object_handlers_arginfo.h | ||
observer.c | ||
observer.h | ||
php_test.h | ||
test.c | ||
test.stub.php | ||
test_arginfo.h |