diff options
-rw-r--r-- | Zend/tests/036.phpt | 9 | ||||
-rw-r--r-- | Zend/tests/alternative_offset_syntax_compile_error_in_const_expr.phpt | 9 | ||||
-rw-r--r-- | Zend/tests/alternative_offset_syntax_compile_error_outside_const_expr.phpt | 9 | ||||
-rw-r--r-- | Zend/tests/constant_expressions_coalesce.phpt | 26 | ||||
-rw-r--r-- | Zend/tests/varSyntax/newVariable.phpt | 4 | ||||
-rw-r--r-- | Zend/zend_compile.c | 5 | ||||
-rw-r--r-- | ext/iconv/tests/eucjp2iso2022jp.phpt | 2 | ||||
-rw-r--r-- | tests/strings/offsets_general.phpt | 38 |
8 files changed, 22 insertions, 80 deletions
diff --git a/Zend/tests/036.phpt b/Zend/tests/036.phpt index 6b6549d935..8f74bccc07 100644 --- a/Zend/tests/036.phpt +++ b/Zend/tests/036.phpt @@ -8,14 +8,7 @@ try { } catch (Error $e) { echo $e->getMessage(), "\n"; } -try { - $a{function() { }} = 1; -} catch (Error $e) { - echo $e->getMessage(), "\n"; -} ?> ---EXPECTF-- -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s on line %d -Illegal offset type +--EXPECT-- Illegal offset type diff --git a/Zend/tests/alternative_offset_syntax_compile_error_in_const_expr.phpt b/Zend/tests/alternative_offset_syntax_compile_error_in_const_expr.phpt new file mode 100644 index 0000000000..7001d924e8 --- /dev/null +++ b/Zend/tests/alternative_offset_syntax_compile_error_in_const_expr.phpt @@ -0,0 +1,9 @@ +--TEST-- +Alternative offset syntax should emit E_COMPILE_ERROR in const expression +--FILE-- +<?php +const FOO_COMPILE_ERROR = "BAR"{0}; +var_dump(FOO_COMPILE_ERROR); +?> +--EXPECTF-- +Fatal error: Array and string offset access syntax with curly braces is no longer supported in %s on line 2 diff --git a/Zend/tests/alternative_offset_syntax_compile_error_outside_const_expr.phpt b/Zend/tests/alternative_offset_syntax_compile_error_outside_const_expr.phpt new file mode 100644 index 0000000000..c5e5848b6c --- /dev/null +++ b/Zend/tests/alternative_offset_syntax_compile_error_outside_const_expr.phpt @@ -0,0 +1,9 @@ +--TEST-- +Alternative offset syntax should emit E_COMPILE_ERROR outside const expression +--FILE-- +<?php +$foo = 'BAR'; +var_dump($foo{0}); +?> +--EXPECTF-- +Fatal error: Array and string offset access syntax with curly braces is no longer supported in %s on line 3 diff --git a/Zend/tests/constant_expressions_coalesce.phpt b/Zend/tests/constant_expressions_coalesce.phpt index 27740aa72e..425aba69c4 100644 --- a/Zend/tests/constant_expressions_coalesce.phpt +++ b/Zend/tests/constant_expressions_coalesce.phpt @@ -5,12 +5,6 @@ Constant expressions with null coalescing operator ?? const A = [1 => [[]]]; -// should produce deprecation notices -const D_1 = null ?? A[1]{'undefined'}['index'] ?? 1; -const D_2 = null ?? A['undefined']{'index'} ?? 2; -const D_3 = null ?? A[1]{0}{2} ?? 3; // 2 deprecation notices -const D_4 = A[1]{0} ?? 4; - const T_1 = null ?? A[1]['undefined']['index'] ?? 1; const T_2 = null ?? A['undefined']['index'] ?? 2; const T_3 = null ?? A[1][0][2] ?? 3; @@ -18,11 +12,6 @@ const T_4 = A[1][0][2] ?? 4; const T_5 = null ?? __LINE__; const T_6 = __LINE__ ?? "bar"; -var_dump(D_1); -var_dump(D_2); -var_dump(D_3); -var_dump(D_4); - var_dump(T_1); var_dump(T_2); var_dump(T_3); @@ -42,21 +31,6 @@ var_dump((new class { public $var = A[1][0][2] ?? 4; })->var); ?> --EXPECTF-- - -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s line %d - -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s line %d - -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s line %d - -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s line %d - -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s line %d -int(1) -int(2) -int(3) -array(0) { -} int(1) int(2) int(3) diff --git a/Zend/tests/varSyntax/newVariable.phpt b/Zend/tests/varSyntax/newVariable.phpt index 5505ffc0f1..97927ef439 100644 --- a/Zend/tests/varSyntax/newVariable.phpt +++ b/Zend/tests/varSyntax/newVariable.phpt @@ -15,7 +15,6 @@ $weird = [0 => (object) ['foo' => 'Test']]; var_dump(new $className); var_dump(new $array['className']); -var_dump(new $array{'className'}); var_dump(new $obj->className); var_dump(new Test::$className); var_dump(new $test::$className); @@ -23,9 +22,6 @@ var_dump(new $weird[0]->foo::$className); ?> --EXPECTF-- -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s on line %d -object(stdClass)#%d (0) { -} object(stdClass)#%d (0) { } object(stdClass)#%d (0) { diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 9206a15be5..cc7eb6f1d5 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -2626,9 +2626,8 @@ static inline void zend_emit_assign_znode(zend_ast *var_ast, znode *value_node) static zend_op *zend_delayed_compile_dim(znode *result, zend_ast *ast, uint32_t type) /* {{{ */ { if (ast->attr == ZEND_DIM_ALTERNATIVE_SYNTAX) { - zend_error(E_DEPRECATED, "Array and string offset access syntax with curly braces is deprecated"); + zend_error(E_COMPILE_ERROR, "Array and string offset access syntax with curly braces is no longer supported"); } - zend_ast *var_ast = ast->child[0]; zend_ast *dim_ast = ast->child[1]; zend_op *opline; @@ -9183,7 +9182,7 @@ void zend_eval_const_expr(zend_ast **ast_ptr) /* {{{ */ if (ast->attr & ZEND_DIM_ALTERNATIVE_SYNTAX) { ast->attr &= ~ZEND_DIM_ALTERNATIVE_SYNTAX; /* remove flag to avoid duplicate warning */ - zend_error(E_DEPRECATED, "Array and string offset access syntax with curly braces is deprecated"); + zend_error(E_COMPILE_ERROR, "Array and string offset access syntax with curly braces is no longer supported"); } /* Set isset fetch indicator here, opcache disallows runtime altering of the AST */ diff --git a/ext/iconv/tests/eucjp2iso2022jp.phpt b/ext/iconv/tests/eucjp2iso2022jp.phpt index aacdc238c6..30ff76e514 100644 --- a/ext/iconv/tests/eucjp2iso2022jp.phpt +++ b/ext/iconv/tests/eucjp2iso2022jp.phpt @@ -11,7 +11,7 @@ error_reporting=2039 function hexdump($str) { $len = strlen($str); for ($i = 0; $i < $len; ++$i) { - printf("%02x", ord($str{$i})); + printf("%02x", ord($str[$i])); } print "\n"; } diff --git a/tests/strings/offsets_general.phpt b/tests/strings/offsets_general.phpt index b2ceea088a..7bbe9618d5 100644 --- a/tests/strings/offsets_general.phpt +++ b/tests/strings/offsets_general.phpt @@ -12,34 +12,8 @@ var_dump(isset($string[0][0])); var_dump($string["foo"]); var_dump(isset($string["foo"]["bar"])); -const FOO_DEPRECATED = "BAR"{0}; -var_dump(FOO_DEPRECATED); -var_dump([$string{0}]); // 1 notice -var_dump($string{1}); -var_dump(isset($string{0})); -var_dump(isset($string{0}{0})); // 2 notices -var_dump($string{"foo"}); -var_dump(isset($string{"foo"}{"bar"})); // 2 notices ?> --EXPECTF-- - -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s line %d - -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s line %d - -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s line %d - -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s line %d - -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s line %d - -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s line %d - -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s line %d - -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s line %d - -Deprecated: Array and string offset access syntax with curly braces is deprecated in %s line %d string(1) "B" string(1) "f" string(1) "o" @@ -49,15 +23,3 @@ bool(true) Warning: Illegal string offset 'foo' in %s line %d string(1) "f" bool(false) -string(1) "B" -array(1) { - [0]=> - string(1) "f" -} -string(1) "o" -bool(true) -bool(true) - -Warning: Illegal string offset 'foo' in %s line %d -string(1) "f" -bool(false) |