b0y-101 Mini Shell


Current Path : E:/www/b-group.old/spfin - Copy/testpayment/src/xdebug/tests/tracing/
File Upload :
Current File : E:/www/b-group.old/spfin - Copy/testpayment/src/xdebug/tests/tracing/bug01599-001-php80.phpt

--TEST--
Test for tracing new PHP 7.4 assignment opcodes (>= PHP 8)
--SKIPIF--
<?php
require __DIR__ . '/../utils.inc';
if ( ! ( runtime_version( '8.0', '>=' ) ) ) {
	echo "skip >= PHP 8.0\n";
};
?>
--INI--
xdebug.mode=trace
xdebug.start_with_request=no
xdebug.trace_format=0
xdebug.collect_return=0
xdebug.collect_assignments=1
--FILE--
<?php
require_once 'capture-trace.inc';

class foo {
	static public $var1;
	static public $var2;
	static public $var3;
	static public $var4 = 0;

	static function test()
	{
		self::$var1 = 42;
		self::$var2 = self::$var1;
		self::$var3 &= self::$var2;
		self::$var3 =& self::$var2;
		self::$var4++;
		self::$var4--;
		++self::$var4;
		--self::$var4;
	}
}
foo::test();

xdebug_stop_trace();
?>
--EXPECTF--
TRACE START [%d-%d-%d %d:%d:%d.%d]
                             => $tf = '%sxt%S' %s:%d
%w%f %w%d     -> foo::test() %sbug01599-001-php80.php:22
                             => self::var1 = 42 %sbug01599-001-php80.php:12
                             => self::var2 = 42 %sbug01599-001-php80.php:13
                             => self::var3 &= 42 %sbug01599-001-php80.php:14
                             => self::var3 =& self::var2 %sbug01599-001-php80.php:15
                             => ++self::var4 %sbug01599-001-php80.php:16
                             => --self::var4 %sbug01599-001-php80.php:17
                             => ++self::var4 %sbug01599-001-php80.php:18
                             => --self::var4 %sbug01599-001-php80.php:19
%w%f %w%d     -> xdebug_stop_trace() %sbug01599-001-php80.php:24
%w%f %w%d
TRACE END   [%d-%d-%d %d:%d:%d.%d]

Copyright © 2019 by b0y-101