cvs: ZendEngine2 / zend_API.c

From: Date: Sat, 05 Jun 2004 14:59:21 +0000
Subject: cvs: ZendEngine2 / zend_API.c
Groups: php.zend-engine.cvs 
Request: Send a blank email to php-zend-engine-cvs+get-2681@lists.php.net to get a copy of this message
helly Sat Jun 5 10:59:21 2004 EDT Modified files: /ZendEngine2 zend_API.c Log: Fix #28641: Instance of Interface http://cvs.php.net/diff.php/ZendEngine2/zend_API.c?r1=1.255&r2=1.256&ty=u Index: ZendEngine2/zend_API.c diff -u ZendEngine2/zend_API.c:1.255 ZendEngine2/zend_API.c:1.256 --- ZendEngine2/zend_API.c:1.255 Tue May 18 17:19:15 2004 +++ ZendEngine2/zend_API.c Sat Jun 5 10:59:21 2004 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: zend_API.c,v 1.255 2004/05/18 21:19:15 helly Exp $ */ +/* $Id: zend_API.c,v 1.256 2004/06/05 14:59:21 helly Exp $ */ #include "zend.h" #include "zend_execute.h" @@ -693,6 +693,11 @@ { zval *tmp; zend_object *object; + + if (class_type->ce_flags & (ZEND_ACC_INTERFACE|ZEND_ACC_IMPLICIT_ABSTRACT_CLASS|ZEND_ACC_EXPLICIT_ABSTRACT_CLASS)) { + char *what = class_type->ce_flags & ZEND_ACC_INTERFACE ? "interface" : "abstract class"; + zend_error(E_ERROR, "Cannot instantiate %s %s", what, class_type->name); + } if (!class_type->constants_updated) { zend_hash_apply_with_argument(&class_type->default_properties, (apply_func_arg_t) zval_update_constant, (void *) 1 TSRMLS_CC);

« previous php.zend-engine.cvs (#2681) next »