+static php_property_proxy_object_t *new_propro(zend_class_entry *ce,
+ php_property_proxy_t *proxy TSRMLS_DC)
+{
+ php_property_proxy_object_t *o;
+
+ if (!ce) {
+ ce = php_property_proxy_class_entry;
+ }
+
+ o = ecalloc(1, sizeof(*o) + sizeof(zval) * ce->default_properties_count);
+ zend_object_std_init((zend_object *) o, ce TSRMLS_CC);
+ object_properties_init((zend_object *) o, ce);
+
+ o->proxy = proxy;
+ o->zo.handlers = &php_property_proxy_object_handlers;
+
+#if DEBUG_PROPRO
+ fprintf(stderr, "#PP %p init\n", o);
+#endif
+
+ return o;
+}
+
+static zend_object *create_obj(zend_class_entry *ce TSRMLS_DC)