diff options
author | Marcus Boerger <helly@php.net> | 2006-06-04 10:27:28 +0000 |
---|---|---|
committer | Marcus Boerger <helly@php.net> | 2006-06-04 10:27:28 +0000 |
commit | 6c0f1667946f1e722d8f2f6b838f197b7b9a8cfc (patch) | |
tree | 0a22c8e92efe73ae708e38dc31d097e4b55aca12 /Zend/zend_API.c | |
parent | dfd229584941c8f2f3b22018167bfbcf3d21a5ea (diff) | |
download | php-git-6c0f1667946f1e722d8f2f6b838f197b7b9a8cfc.tar.gz |
- Fix function flag check
Diffstat (limited to 'Zend/zend_API.c')
-rw-r--r-- | Zend/zend_API.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c index cd73488ed9..b87da8884e 100644 --- a/Zend/zend_API.c +++ b/Zend/zend_API.c @@ -547,7 +547,6 @@ static char *zend_parse_arg_impl(int arg_num, zval **arg, va_list *va, char **sp } break; - case 'z': { zval **p = va_arg(*va, zval **); @@ -1636,6 +1635,9 @@ ZEND_API int zend_register_functions(zend_class_entry *scope, zend_function_entr scope->ce_flags |= ZEND_ACC_EXPLICIT_ABSTRACT_CLASS; } } + if (ptr->flags & ZEND_ACC_STATIC && (!scope || !(scope->ce_flags & ZEND_ACC_INTERFACE))) { + zend_error(error_type, "Static function %s%s%s() cannot be abstract", scope ? scope->name : "", scope ? "::" : "", ptr->fname); + } } else { if (scope && (scope->ce_flags & ZEND_ACC_INTERFACE)) { efree(lc_class_name); |