From 59d168eda7c1d63ecb063af8a3f70b49c000a181 Mon Sep 17 00:00:00 2001 From: Zeev Suraski Date: Wed, 14 Jan 2004 14:00:11 +0000 Subject: [PATCH] Don't allow interfaces to implement anything --- Zend/zend_compile.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index bec6dee9f3..9432407abd 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -2420,6 +2420,10 @@ void zend_do_implements_interface(znode *interface_znode TSRMLS_DC) { zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC); + if (CG(active_class_entry)->ce_flags & ZEND_ACC_INTERFACE) { + zend_error(E_COMPILE_ERROR, "Interfaces cannot implement other classes/interfaces"); + } + opline->opcode = ZEND_ADD_INTERFACE; opline->op1 = CG(implementing_class); opline->op2 = *interface_znode; -- 2.50.1