@@ -1629,14 +1629,28 @@ OPTIONAL_WHITESPACE_OR_COMMENTS ({WHITESPACE}|{MULTI_LINE_COMMENT}|{SINGLE_LINE_
16291629 RETURN_TOKEN_WITH_IDENT (T_VAR);
16301630}
16311631
1632- <ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}(" int" | " integer " ){TABS_AND_SPACES}" )" {
1632+ <ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}(" int" ){TABS_AND_SPACES}" )" {
16331633 RETURN_TOKEN (T_INT_CAST);
16341634}
16351635
1636- <ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}(" double" |" float" ){TABS_AND_SPACES}" )" {
1636+ <ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}(" integer" ){TABS_AND_SPACES}" )" {
1637+ if (PARSER_MODE ()) {
1638+ zend_error (E_DEPRECATED, " Non-canonical cast (integer) is deprecated, use the (int) cast instead" );
1639+ }
1640+ RETURN_TOKEN (T_INT_CAST);
1641+ }
1642+
1643+ <ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}(" float" ){TABS_AND_SPACES}" )" {
16371644 RETURN_TOKEN (T_DOUBLE_CAST);
16381645}
16391646
1647+ <ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}(" double" ){TABS_AND_SPACES}" )" {
1648+ if (PARSER_MODE ()) {
1649+ zend_error (E_DEPRECATED, " Non-canonical cast (double) is deprecated, use the (float) cast instead" );
1650+ }
1651+ RETURN_TOKEN (T_INT_CAST);
1652+ }
1653+
16401654<ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}" real" {TABS_AND_SPACES}" )" {
16411655 if (PARSER_MODE ()) {
16421656 zend_throw_exception (zend_ce_parse_error, " The (real) cast has been removed, use (float) instead" , 0 );
@@ -1645,10 +1659,17 @@ OPTIONAL_WHITESPACE_OR_COMMENTS ({WHITESPACE}|{MULTI_LINE_COMMENT}|{SINGLE_LINE_
16451659 RETURN_TOKEN (T_DOUBLE_CAST);
16461660}
16471661
1648- <ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}(" string" | " binary " ){TABS_AND_SPACES}" )" {
1662+ <ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}(" string" ){TABS_AND_SPACES}" )" {
16491663 RETURN_TOKEN (T_STRING_CAST);
16501664}
16511665
1666+ <ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}(" binary" ){TABS_AND_SPACES}" )" {
1667+ if (PARSER_MODE ()) {
1668+ zend_error (E_DEPRECATED, " Non-canonical cast (binary) is deprecated, use the (string) cast instead" );
1669+ }
1670+ RETURN_TOKEN (T_INT_CAST);
1671+ }
1672+
16521673<ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}" array" {TABS_AND_SPACES}" )" {
16531674 RETURN_TOKEN (T_ARRAY_CAST);
16541675}
@@ -1657,10 +1678,17 @@ OPTIONAL_WHITESPACE_OR_COMMENTS ({WHITESPACE}|{MULTI_LINE_COMMENT}|{SINGLE_LINE_
16571678 RETURN_TOKEN (T_OBJECT_CAST);
16581679}
16591680
1660- <ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}(" bool" | " boolean " ){TABS_AND_SPACES}" )" {
1681+ <ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}(" bool" ){TABS_AND_SPACES}" )" {
16611682 RETURN_TOKEN (T_BOOL_CAST);
16621683}
16631684
1685+ <ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}(" boolean" ){TABS_AND_SPACES}" )" {
1686+ if (PARSER_MODE ()) {
1687+ zend_error (E_DEPRECATED, " Non-canonical cast (boolean) is deprecated, use the (bool) cast instead" );
1688+ }
1689+ RETURN_TOKEN (T_INT_CAST);
1690+ }
1691+
16641692<ST_IN_SCRIPTING>" (" {TABS_AND_SPACES}(" unset" ){TABS_AND_SPACES}" )" {
16651693 RETURN_TOKEN (T_UNSET_CAST);
16661694}
0 commit comments