diff options
author | Nikita Popov <nikita.ppv@gmail.com> | 2019-01-30 13:35:36 +0100 |
---|---|---|
committer | Nikita Popov <nikita.ppv@gmail.com> | 2019-01-30 14:00:16 +0100 |
commit | 0dfd918ee7a3520836b875b8c24f0a5f98fbee15 (patch) | |
tree | 2f9645b0f4bcef2f5a3d0ae702bf27470b6f397b /Zend/zend_compile.c | |
parent | e93bbf4d5d2812c698a4711fc0ff751b170bdf2b (diff) | |
download | php-git-0dfd918ee7a3520836b875b8c24f0a5f98fbee15.tar.gz |
Remove support for __autoload()
There are probably some improvements we can do to the SPL
implementation now that __autoload() is gone. In particular having
EG(autoload_func) as a property zend function, rather than a simple
callback probably doesn't make sense.
Diffstat (limited to 'Zend/zend_compile.c')
-rw-r--r-- | Zend/zend_compile.c | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index f744b8f987..59ff42cc30 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -5702,7 +5702,6 @@ void zend_begin_method_decl(zend_op_array *op_array, zend_string *name, zend_boo static void zend_begin_func_decl(znode *result, zend_op_array *op_array, zend_ast_decl *decl, zend_bool toplevel) /* {{{ */ { - zend_ast *params_ast = decl->child[0]; zend_string *unqualified_name, *name, *lcname, *key; zend_op *opline; @@ -5719,13 +5718,9 @@ static void zend_begin_func_decl(znode *result, zend_op_array *op_array, zend_as } } - if (zend_string_equals_literal(lcname, ZEND_AUTOLOAD_FUNC_NAME)) { - if (zend_ast_get_list(params_ast)->children != 1) { - zend_error_noreturn(E_COMPILE_ERROR, "%s() must take exactly 1 argument", - ZEND_AUTOLOAD_FUNC_NAME); - } - - zend_error(E_DEPRECATED, "__autoload() is deprecated, use spl_autoload_register() instead"); + if (zend_string_equals_literal(lcname, "__autoload")) { + zend_error_noreturn(E_COMPILE_ERROR, + "__autoload() is no longer supported, use spl_autoload_register() instead"); } if (zend_string_equals_literal_ci(unqualified_name, "assert")) { |