xref: /PHP-7.0/sapi/phpdbg/tests/stepping_001.phpt (revision fe378c27)
1--TEST--
2Stepping with exceptions must not be stuck at CATCH
3--PHPDBG--
4b ZEND_THROW
5r
6s
7
8
9
10
11
12
13q
14--EXPECTF--
15[Successful compilation of %s]
16prompt> [Breakpoint #0 added at ZEND_THROW]
17prompt> [Breakpoint #0 in ZEND_THROW at %s:4, hits: 1]
18>00004: 	throw new Exception;
19 00005: }
20 00006:
21prompt> [L0 %s HANDLE_EXCEPTION                                                                       %s]
22>00004: 	throw new Exception;
23 00005: }
24 00006:
25prompt> [L0 %s HANDLE_EXCEPTION                                                                       %s]
26[L9 %s CATCH                   "Exception"          $e                   1                    %s]
27>00008: 	foo();
28 00009: } catch (Exception $e) {
29 00010: 	echo "ok";
30prompt> [L10 %s ECHO                    "ok"                                                           %s]
31>00010: 	echo "ok";
32 00011: } finally {
33 00012: 	echo " ... ok";
34prompt> ok
35[L11 %s FAST_CALL               J8                                        ~%d                   %s]
36>00011: } finally {
37 00012: 	echo " ... ok";
38 00013: }
39prompt> [L12 %s ECHO                    " ... ok"                                                      %s]
40>00012: 	echo " ... ok";
41 00013: }
42 00014:
43prompt>  ... ok
44[L12 %s FAST_RET                ~%d                                                             %s]
45[L11 %s JMP                     J10                                                            %s]
46>00011: } finally {
47 00012: 	echo " ... ok";
48 00013: }
49prompt> [L14 %s RETURN                  1                                                              %s]
50>00014:
51prompt>
52--FILE--
53<?php
54
55function foo() {
56	throw new Exception;
57}
58
59try {
60	foo();
61} catch (Exception $e) {
62	echo "ok";
63} finally {
64	echo " ... ok";
65}
66