1
0
mirror of https://github.com/php/php-src.git synced 2026-03-26 09:12:14 +01:00
Files
archived-php-src/sapi/phpdbg/tests/watch_001.phpt
Christoph M. Becker c5cf0af8a9 Mark several phpdbg tests as xfail
Apparently, breakpoints and watchpoints are practically disabled if
run with OPcache JIT under Windows, so we mark the affected tests as
xfail in that case for the time being.
2020-05-27 11:39:15 +02:00

60 lines
1.1 KiB
PHP

--TEST--
Test simple recursive watchpoint
--SKIPIF--
<?php
if (PHP_INT_SIZE == 4) {
die("xfail There may be flaws in the implementation of watchpoints that cause failures");
}
if (PHP_OS_FAMILY === 'Windows' && ini_get('opcache.jit') && ini_get('opcache.jit_buffer_size')) {
die('xfail breakpoint/watchpoint issues with JIT on Windows');
}
if (getenv('SKIP_ASAN')) {
die("skip intentionally causes segfaults");
}
?>
--INI--
opcache.optimization_level=0
--PHPDBG--
b 3
r
w r $b
c
q
--EXPECTF--
[Successful compilation of %s]
prompt> [Breakpoint #0 added at %s:3]
prompt> [Breakpoint #0 at %s:3, hits: 1]
>00003: $a = 1;
00004: $b = [$a];
00005:
prompt> [Added recursive watchpoint #0 for $b]
prompt> [Breaking on watchpoint $b]
Old value:
New value: Array ([0] => 1)
>00006: unset($b);
00007: $b = 2;
00008:
prompt> [Breaking on watchpoint $b]
Old value inaccessible or destroyed
New value:
>00007: $b = 2;
00008:
prompt> [Breaking on watchpoint $b]
Old value:
New value: 2
>00008:
prompt> [$b has been removed, removing watchpoint recursively]
[Script ended normally]
prompt>
--FILE--
<?php
$a = 1;
$b = [$a];
unset($b);
$b = 2;