From 8c4eede77ddb8fcfd6d8606c490b47c2f40e5312 Mon Sep 17 00:00:00 2001 From: Marcus Boerger Date: Thu, 26 Aug 2004 23:02:55 +0000 Subject: [PATCH] MFH: Enforce semantics: Classes cannot extend Interfaces --- Zend/zend_compile.c | 4 ++++ 1 file changed, 4 insertions(+) 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++; -- 2.50.1