@@ -1586,28 +1586,6 @@ ZEND_API void object_properties_init_ex(zend_object *object, HashTable *properti
15861586}
15871587/* }}} */
15881588
1589- ZEND_API zend_never_inline void zend_forbidden_dynamic_property (zend_class_entry * ce , zend_string * member ) {
1590- zend_throw_error (NULL , "Cannot create dynamic property %s::$%s" ,
1591- ZSTR_VAL (ce -> name ), ZSTR_VAL (member ));
1592- }
1593-
1594- ZEND_API zend_never_inline bool zend_deprecated_dynamic_property (zend_object * obj , zend_string * member ) {
1595- GC_ADDREF (obj );
1596- zend_error (E_DEPRECATED , "Creation of dynamic property %s::$%s is deprecated" ,
1597- ZSTR_VAL (obj -> ce -> name ), ZSTR_VAL (member ));
1598- if (UNEXPECTED (GC_DELREF (obj ) == 0 )) {
1599- zend_class_entry * ce = obj -> ce ;
1600- zend_objects_store_del (obj );
1601- if (!EG (exception )) {
1602- /* We cannot continue execution and have to throw an exception */
1603- zend_throw_error (NULL , "Cannot create dynamic property %s::$%s" ,
1604- ZSTR_VAL (ce -> name ), ZSTR_VAL (member ));
1605- }
1606- return 0 ;
1607- }
1608- return 1 ;
1609- }
1610-
16111589ZEND_API void object_properties_load (zend_object * object , HashTable * properties ) /* {{{ */
16121590{
16131591 zval * prop , tmp ;
@@ -1650,12 +1628,12 @@ ZEND_API void object_properties_load(zend_object *object, HashTable *properties)
16501628 }
16511629 } else {
16521630 if (UNEXPECTED (object -> ce -> ce_flags & ZEND_ACC_NO_DYNAMIC_PROPERTIES )) {
1653- zend_forbidden_dynamic_property (object -> ce , key );
1631+ zend_throw_error (NULL , "Cannot create dynamic property %s::$%s" ,
1632+ ZSTR_VAL (object -> ce -> name ), zend_get_unmangled_property_name (key ));
16541633 return ;
16551634 } else if (!(object -> ce -> ce_flags & ZEND_ACC_ALLOW_DYNAMIC_PROPERTIES )) {
1656- if (!zend_deprecated_dynamic_property (object , key )) {
1657- return ;
1658- }
1635+ zend_error (E_DEPRECATED , "Creation of dynamic property %s::$%s is deprecated" ,
1636+ ZSTR_VAL (object -> ce -> name ), zend_get_unmangled_property_name (key ));
16591637 }
16601638
16611639 if (!object -> properties ) {
@@ -1666,12 +1644,12 @@ ZEND_API void object_properties_load(zend_object *object, HashTable *properties)
16661644 }
16671645 } else {
16681646 if (UNEXPECTED (object -> ce -> ce_flags & ZEND_ACC_NO_DYNAMIC_PROPERTIES )) {
1669- zend_forbidden_dynamic_property (object -> ce , key );
1647+ zend_throw_error (NULL , "Cannot create dynamic property %s::$%s" ,
1648+ ZSTR_VAL (object -> ce -> name ), zend_get_unmangled_property_name (key ));
16701649 return ;
16711650 } else if (!(object -> ce -> ce_flags & ZEND_ACC_ALLOW_DYNAMIC_PROPERTIES )) {
1672- if (!zend_deprecated_dynamic_property (object , key )) {
1673- return ;
1674- }
1651+ zend_error (E_DEPRECATED , "Creation of dynamic property %s::$%s is deprecated" ,
1652+ ZSTR_VAL (object -> ce -> name ), zend_get_unmangled_property_name (key ));
16751653 }
16761654
16771655 if (!object -> properties ) {
0 commit comments