From: Nikita Popov Date: Wed, 1 Feb 2017 23:23:11 +0000 (+0100) Subject: Deprecate (unset) X-Git-Tag: php-7.2.0alpha1~409 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7a73c5f6bba386e0d82dd467e9dacceb10b851e3;p=php Deprecate (unset) Pecularily, there wasn't a single test for the (unset) cast... --- diff --git a/Zend/tests/unset_cast_deprecated.phpt b/Zend/tests/unset_cast_deprecated.phpt new file mode 100644 index 0000000000..6744c85f02 --- /dev/null +++ b/Zend/tests/unset_cast_deprecated.phpt @@ -0,0 +1,14 @@ +--TEST-- +The (unset) cast is deprecated +--FILE-- + +--EXPECTF-- +Deprecated: The (unset) cast is deprecated in %s on line %d +NULL +int(1) diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 9a904eefa8..84a3e6a021 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -6871,6 +6871,10 @@ void zend_compile_cast(znode *result, zend_ast *ast) /* {{{ */ opline = zend_emit_op_tmp(result, ZEND_CAST, &expr_node, NULL); opline->extended_value = ast->attr; + + if (ast->attr == IS_NULL) { + zend_error(E_DEPRECATED, "The (unset) cast is deprecated"); + } } /* }}} */