summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorge Peter Banyard <girgias@php.net>2020-02-28 12:13:03 +0100
committerGeorge Peter Banyard <girgias@php.net>2020-03-12 15:40:21 +0100
commitc9db32271a8083721582c5ec1dd09c4d4f562c74 (patch)
treea1a20d8c869bccf0849f16527bfb8be3767d5fbf
parent0fdffc18070f083b7064f7c7d97bf1900a2b765b (diff)
downloadphp-git-c9db32271a8083721582c5ec1dd09c4d4f562c74.tar.gz
Remove deprecated (real) cast
Closes GH-5220
-rw-r--r--Zend/tests/real_cast_deprecation.phpt11
-rw-r--r--Zend/zend_language_scanner.l2
-rw-r--r--ext/tokenizer/tests/token_get_all_variation8.phpt2
-rw-r--r--ext/tokenizer/tokenizer_data.c4
4 files changed, 4 insertions, 15 deletions
diff --git a/Zend/tests/real_cast_deprecation.phpt b/Zend/tests/real_cast_deprecation.phpt
deleted file mode 100644
index a73517c504..0000000000
--- a/Zend/tests/real_cast_deprecation.phpt
+++ /dev/null
@@ -1,11 +0,0 @@
---TEST--
-The (real) cast is deprecated
---FILE--
-<?php
-
-var_dump((real) 42);
-
-?>
---EXPECTF--
-Deprecated: The (real) cast is deprecated, use (float) instead in %s on line %d
-float(42)
diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l
index a4e8b6f7be..285ade26df 100644
--- a/Zend/zend_language_scanner.l
+++ b/Zend/zend_language_scanner.l
@@ -1496,7 +1496,7 @@ NEWLINE ("\r"|"\n"|"\r\n")
<ST_IN_SCRIPTING>"("{TABS_AND_SPACES}"real"{TABS_AND_SPACES}")" {
if (PARSER_MODE()) {
- zend_error(E_DEPRECATED, "The (real) cast is deprecated, use (float) instead");
+ zend_throw_exception(zend_ce_parse_error, "The (real) cast has been removed, use (float) instead", 0);
}
RETURN_TOKEN(T_DOUBLE_CAST);
}
diff --git a/ext/tokenizer/tests/token_get_all_variation8.phpt b/ext/tokenizer/tests/token_get_all_variation8.phpt
index 015e60d6e3..14a051955e 100644
--- a/ext/tokenizer/tests/token_get_all_variation8.phpt
+++ b/ext/tokenizer/tests/token_get_all_variation8.phpt
@@ -18,7 +18,7 @@ Test token_get_all() function : usage variations - with type casting operators
echo "*** Testing token_get_all() : 'source' string with different type casting operators ***\n";
-// type casting operators : (int), (integer), (float), (real), (double), (string), (array), (object), (bool), (boolean),(unset)
+// type casting operators : (int), (integer), (float), (double), (string), (array), (object), (bool), (boolean),(unset)
$source = '<?php
$a = 1, $b = 10.5
$c = (int)$b + $a;
diff --git a/ext/tokenizer/tokenizer_data.c b/ext/tokenizer/tokenizer_data.c
index 414202ff3b..7e580dd844 100644
--- a/ext/tokenizer/tokenizer_data.c
+++ b/ext/tokenizer/tokenizer_data.c
@@ -70,7 +70,6 @@ void tokenizer_register_constants(INIT_FUNC_ARGS) {
REGISTER_LONG_CONSTANT("T_BOOL_CAST", T_BOOL_CAST, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("T_UNSET_CAST", T_UNSET_CAST, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("T_POW", T_POW, CONST_CS | CONST_PERSISTENT);
- REGISTER_LONG_CONSTANT("T_NEW", T_NEW, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("T_CLONE", T_CLONE, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("T_ELSEIF", T_ELSEIF, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("T_ELSE", T_ELSE, CONST_CS | CONST_PERSISTENT);
@@ -86,6 +85,7 @@ void tokenizer_register_constants(INIT_FUNC_ARGS) {
REGISTER_LONG_CONSTANT("T_EVAL", T_EVAL, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("T_INC", T_INC, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("T_DEC", T_DEC, CONST_CS | CONST_PERSISTENT);
+ REGISTER_LONG_CONSTANT("T_NEW", T_NEW, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("T_EXIT", T_EXIT, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("T_IF", T_IF, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("T_ENDIF", T_ENDIF, CONST_CS | CONST_PERSISTENT);
@@ -213,7 +213,6 @@ char *get_token_type_name(int token_type)
case T_BOOL_CAST: return "T_BOOL_CAST";
case T_UNSET_CAST: return "T_UNSET_CAST";
case T_POW: return "T_POW";
- case T_NEW: return "T_NEW";
case T_CLONE: return "T_CLONE";
case T_ELSEIF: return "T_ELSEIF";
case T_ELSE: return "T_ELSE";
@@ -229,6 +228,7 @@ char *get_token_type_name(int token_type)
case T_EVAL: return "T_EVAL";
case T_INC: return "T_INC";
case T_DEC: return "T_DEC";
+ case T_NEW: return "T_NEW";
case T_EXIT: return "T_EXIT";
case T_IF: return "T_IF";
case T_ENDIF: return "T_ENDIF";