Merge branch 'PHP-8.2' into PHP-8.3

* PHP-8.2:
  Delay #[Attribute] arg validation until runtime
This commit is contained in:
Ilija Tovilo 2024-05-06 12:48:32 +02:00
commit 480d08a70a
No known key found for this signature in database
GPG key ID: A4F5D403F118200A
10 changed files with 106 additions and 28 deletions

View file

@ -6772,16 +6772,9 @@ ZEND_METHOD(ReflectionAttribute, newInstance)
}
if (ce->type == ZEND_USER_CLASS) {
uint32_t flags = ZEND_ATTRIBUTE_TARGET_ALL;
if (marker->argc > 0) {
zval tmp;
if (FAILURE == zend_get_attribute_value(&tmp, marker, 0, ce)) {
RETURN_THROWS();
}
flags = (uint32_t) Z_LVAL(tmp);
uint32_t flags = zend_attribute_attribute_get_flags(marker, ce);
if (EG(exception)) {
RETURN_THROWS();
}
if (!(attr->target & flags)) {