--TEST-- Test for bug #614: local variables loses class members (< PHP 8.1) --SKIPIF-- <?php require __DIR__ . '/../utils.inc'; check_reqs('PHP < 8.1; dbgp'); ?> --FILE-- <?php require 'dbgp/dbgpclient.php'; $filename = realpath( dirname(__FILE__) . '/bug00614.inc' ); $commands = array( "breakpoint_set -t line -f file://{$filename} -n 62", 'run', 'stack_get', 'property_get -n $e', 'property_get -n $e -p 1', 'property_get -n $e->k', 'property_get -n $e->*Base*k', 'detach' ); dbgpRunFile( $filename, $commands ); ?> --EXPECTF-- <?xml version="1.0" encoding="iso-8859-1"?> <init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" fileuri="file://bug00614.inc" language="PHP" xdebug:language_version="" protocol_version="1.0" appid=""><engine version=""><![CDATA[Xdebug]]></engine><author><![CDATA[Derick Rethans]]></author><url><![CDATA[https://xdebug.org]]></url><copyright><![CDATA[Copyright (c) 2002-2099 by Derick Rethans]]></copyright></init> -> breakpoint_set -i 1 -t line -f file://bug00614.inc -n 62 <?xml version="1.0" encoding="iso-8859-1"?> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="1" id=""></response> -> run -i 2 <?xml version="1.0" encoding="iso-8859-1"?> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="run" transaction_id="2" status="break" reason="ok"><xdebug:message filename="file://bug00614.inc" lineno="62"></xdebug:message></response> -> stack_get -i 3 <?xml version="1.0" encoding="iso-8859-1"?> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="stack_get" transaction_id="3"><stack where="{main}" level="0" type="file" filename="file://bug00614.inc" lineno="62"></stack></response> -> property_get -i 4 -n $e <?xml version="1.0" encoding="iso-8859-1"?> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="property_get" transaction_id="4"><property name="$e" fullname="$e" type="object" classname="Extension" children="1" numchildren="33" page="0" pagesize="32"><property name="k" fullname="$e->k" facet="private" type="int"><![CDATA[77]]></property><property name="m" fullname="$e->m" facet="private" type="int"><![CDATA[66]]></property><property name="j" fullname="$e->j" facet="private" type="int"><![CDATA[55]]></property><property name="*Base*a" fullname="$e->*Base*a" facet="private" type="null"></property><property name="*Base*b" fullname="$e->*Base*b" facet="private" type="null"></property><property name="*Base*c" fullname="$e->*Base*c" facet="private" type="null"></property><property name="*Base*d" fullname="$e->*Base*d" facet="private" type="null"></property><property name="*Base*e" fullname="$e->*Base*e" facet="private" type="null"></property><property name="*Base*f" fullname="$e->*Base*f" facet="private" type="null"></property><property name="*Base*g" fullname="$e->*Base*g" facet="private" type="null"></property><property name="*Base*h" fullname="$e->*Base*h" facet="private" type="null"></property><property name="*Base*i" fullname="$e->*Base*i" facet="private" type="int"><![CDATA[99]]></property><property name="*Base*l" fullname="$e->*Base*l" facet="private" type="null"></property><property name="*Base*n" fullname="$e->*Base*n" facet="private" type="null"></property><property name="*Base*o" fullname="$e->*Base*o" facet="private" type="null"></property><property name="*Base*p" fullname="$e->*Base*p" facet="private" type="null"></property><property name="*Base*q" fullname="$e->*Base*q" facet="private" type="null"></property><property name="*Base*r" fullname="$e->*Base*r" facet="private" type="null"></property><property name="*Base*s" fullname="$e->*Base*s" facet="private" type="null"></property><property name="*Base*t" fullname="$e->*Base*t" facet="private" type="null"></property><property name="*Base*u" fullname="$e->*Base*u" facet="private" type="null"></property><property name="*Base*v" fullname="$e->*Base*v" facet="private" type="null"></property><property name="*Base*w" fullname="$e->*Base*w" facet="private" type="null"></property><property name="*Base*x" fullname="$e->*Base*x" facet="private" type="null"></property><property name="*Base*y" fullname="$e->*Base*y" facet="private" type="null"></property><property name="*Base*z" fullname="$e->*Base*z" facet="private" type="null"></property><property name="*Base*z1" fullname="$e->*Base*z1" facet="private" type="null"></property><property name="*Base*z2" fullname="$e->*Base*z2" facet="private" type="null"></property><property name="*Base*z3" fullname="$e->*Base*z3" facet="private" type="null"></property><property name="*Base*z4" fullname="$e->*Base*z4" facet="private" type="null"></property><property name="*Base*j" fullname="$e->*Base*j" facet="private" type="int"><![CDATA[88]]></property><property name="*Base*k" fullname="$e->*Base*k" facet="private" type="int"><![CDATA[11]]></property></property></response> -> property_get -i 5 -n $e -p 1 <?xml version="1.0" encoding="iso-8859-1"?> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="property_get" transaction_id="5"><property name="$e" fullname="$e" type="object" classname="Extension" children="1" numchildren="33" page="1" pagesize="32"><property name="*Base*m" fullname="$e->*Base*m" facet="private" type="null"></property></property></response> -> property_get -i 6 -n $e->k <?xml version="1.0" encoding="iso-8859-1"?> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="property_get" transaction_id="6"><property name="$e->k" fullname="$e->k" type="int"><![CDATA[77]]></property></response> -> property_get -i 7 -n $e->*Base*k <?xml version="1.0" encoding="iso-8859-1"?> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="property_get" transaction_id="7"><property name="$e->*Base*k" fullname="$e->*Base*k" type="int"><![CDATA[11]]></property></response> -> detach -i 8 <?xml version="1.0" encoding="iso-8859-1"?> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="detach" transaction_id="8" status="stopping" reason="ok"></response>