From: Stanislav Malyshev Date: Thu, 9 Jun 2005 17:04:30 +0000 (+0000) Subject: Disallow abstract privae methods X-Git-Tag: php-5.0.5RC1~166 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=328a1117f1719cb55fbc40159e9a6713922e45fe;p=php Disallow abstract privae methods --- diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 2d0d59ea96..16b24ca17a 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -418,6 +418,9 @@ void zend_do_abstract_method(znode *function_name, znode *modifiers, znode *body } if (modifiers->u.constant.value.lval & ZEND_ACC_ABSTRACT) { + if(modifiers->u.constant.value.lval & ZEND_ACC_PRIVATE) { + zend_error(E_COMPILE_ERROR, "%s function %s::%s() cannot be declared private", method_type, CG(active_class_entry)->name, function_name->u.constant.value.str.val); + } if (body->u.constant.value.lval == ZEND_ACC_ABSTRACT) { zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);