From: Marcus Boerger Date: Thu, 26 Aug 2004 23:02:55 +0000 (+0000) Subject: MFH: Enforce semantics: Classes cannot extend Interfaces X-Git-Tag: php-5.0.2RC1~76 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8c4eede77ddb8fcfd6d8606c490b47c2f40e5312;p=php MFH: Enforce semantics: Classes cannot extend Interfaces --- diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index b50a77717e..815033ea58 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -2123,6 +2123,10 @@ ZEND_API zend_class_entry *do_bind_inherited_class(zend_op *opline, HashTable *c ce = *pce; } + if (parent_ce->ce_flags & ZEND_ACC_INTERFACE) { + zend_error(E_COMPILE_ERROR, "Class %s cannot extend from interfac %s", ce->name, parent_ce->name); + } + zend_do_inheritance(ce, parent_ce TSRMLS_CC); ce->refcount++;