View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001049 | Xdebug | public | 2014-05-07 17:43 | 2014-05-07 19:42 | |
Reporter | jakubmisek | Assigned To | derick | ||
Priority | normal | Severity | feature | Reproducibility | always |
Status | resolved | Resolution | no change required | ||
Platform | Visual Studio + PHP Tools | OS | Windows | OS Version | 7 Pro |
Product Version | 2.2.5 | ||||
Summary | 0001049: specific lines are not hit by debugger | ||||
Description | Breakpoints are not hit on specific lines. The same lines are skipped when stepping onto next line while debugging. | ||||
Steps To Reproduce | debug attached script file using any IDE, stepping into a function test*, stepping on the next line jumps out. | ||||
Additional Information | I assume it is related to how PHP processes/builds its opcode. Is there some well-known behavior of what lines can be stepped onto? | ||||
Tags | No tags attached. | ||||
Attached Files | |||||
Operating System | |||||
PHP Version | 5.5.5-5.5.9 | ||||
|
Hi! This is pretty much expected behaviour. PHP generates opcodes on "wrong" lines in some cases, and array initialisations is one of those cases (As are if/else statements without { and } ). If you use VLD (derickrethans.nl/projects.html#vld), you will see what gets generated:
derick@whisky:~ $ php -dvld.active=1 /tmp/index.php Finding entry points Branch analysis from position: 0 Return found filename: /tmp/index.php function name: (null) number of ops: 20 compiled vars: none line # * op fetch ext return operands 3 0 > EXT_STMT branch: # 0; line: 3- 34; sop: 0; eop: 19
|
Date Modified | Username | Field | Change |
---|---|---|---|
2014-05-07 17:43 | jakubmisek | New Issue | |
2014-05-07 17:43 | jakubmisek | File Added: index.php | |
2014-05-07 19:42 | derick | Note Added: 0002808 | |
2014-05-07 19:42 | derick | Status | new => resolved |
2014-05-07 19:42 | derick | Resolution | open => no change required |
2014-05-07 19:42 | derick | Assigned To | => derick |
2016-07-31 12:35 | derick | Category | Debug client (console) => debugclient (debugging tool) |
2016-07-31 12:35 | derick | Category | debugclient (debugging tool) => (No Category) |