File tree 3 files changed +48
-1
lines changed
3 files changed +48
-1
lines changed Original file line number Diff line number Diff line change 8
8
- Core:
9
9
. Fixed bug GH-17623 (Broken stack overflow detection for variable
10
10
compilation). (ilutov)
11
+ . Fixed bug GH-17618 (UnhandledMatchError does not take
12
+ zend.exception_ignore_args=1 into account). (timwolla)
11
13
12
14
- DOM:
13
15
. Fixed bug GH-17609 (Typo in error message: Dom\NO_DEFAULT_NS instead of
Original file line number Diff line number Diff line change
1
+ --TEST--
2
+ Match expression error messages (zend.exception_ignore_args=1)
3
+ --INI--
4
+ zend.exception_ignore_args=1
5
+ --FILE--
6
+ <?php
7
+
8
+ class Beep {}
9
+
10
+ function test (mixed $ var ) {
11
+ try {
12
+ match ($ var ) {};
13
+ } catch (UnhandledMatchError $ e ) {
14
+ print $ e ->getMessage () . PHP_EOL ;
15
+ }
16
+ }
17
+
18
+ test (null );
19
+ test (1 );
20
+ test (5.5 );
21
+ test (5.0 );
22
+ test ("foo " );
23
+ test (true );
24
+ test (false );
25
+ test ([1 , 2 , 3 ]);
26
+ test (new Beep ());
27
+ // Testing long strings.
28
+ test (str_repeat ('e ' , 100 ));
29
+ test (str_repeat ("e \n" , 100 ));
30
+ ?>
31
+ --EXPECT--
32
+ Unhandled match case of type null
33
+ Unhandled match case of type int
34
+ Unhandled match case of type float
35
+ Unhandled match case of type float
36
+ Unhandled match case of type string
37
+ Unhandled match case of type bool
38
+ Unhandled match case of type bool
39
+ Unhandled match case of type array
40
+ Unhandled match case of type Beep
41
+ Unhandled match case of type string
42
+ Unhandled match case of type string
Original file line number Diff line number Diff line change @@ -875,7 +875,10 @@ ZEND_COLD zend_never_inline void zend_magic_get_property_type_inconsistency_erro
875
875
ZEND_COLD void zend_match_unhandled_error (const zval * value )
876
876
{
877
877
smart_str msg = {0 };
878
- if (smart_str_append_zval (& msg , value , EG (exception_string_param_max_len )) != SUCCESS ) {
878
+ if (
879
+ EG (exception_ignore_args )
880
+ || smart_str_append_zval (& msg , value , EG (exception_string_param_max_len )) != SUCCESS
881
+ ) {
879
882
smart_str_appendl (& msg , "of type " , sizeof ("of type " )- 1 );
880
883
smart_str_appends (& msg , zend_zval_type_name (value ));
881
884
}
You can’t perform that action at this time.
0 commit comments