View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001572 | Xdebug | Step Debugging | public | 2018-08-14 18:54 | 2018-08-14 20:13 |
Reporter | chx | Assigned To | derick | ||
Priority | normal | Severity | minor | Reproducibility | always |
Status | resolved | Resolution | not fixable | ||
Platform | all | OS | all | OS Version | all |
Product Version | 2.6.0 | ||||
Summary | 0001572: elseif is skipped | ||||
Description | I filed here https://youtrack.jetbrains.com/issue/WI-43191 but it seems like an xdebug problem. I tested with 2.4.0 , Andriy Bazanov reproduced with 2.6.0. | ||||
Steps To Reproduce | Put an xdebug breakpoint on a line only containing elseif. It won't fire. else if does. | ||||
Tags | No tags attached. | ||||
Attached Files | |||||
Operating System | |||||
PHP Version | 7.2.0-7.2.4 | ||||
|
Do you have Zend OPcache enabled? Because with it, it is smart, and removes the whole
line #* E I O op fetch ext return operands 3 0 E > EXT_STMT It doesn't generate anything on line 5 (where the elseif is at). Even without OPcache, you're going to be out of luck, as PHP doesn't generate an EXT_STMT for "elseif" (only a JMPZ on line 5):
line #* E I O op fetch ext return operands 3 0 E > EXT_STMT although it does for "else if":
line #* E I O op fetch ext return operands 3 0 E > EXT_STMT I'm afraid there is nothing I can do here, and I would recommend you file a bug with the PHP team at https://bugs.php.net in order for them to fix that. |
Date Modified | Username | Field | Change |
---|---|---|---|
2018-08-14 18:54 | chx | New Issue | |
2018-08-14 18:54 | chx | File Added: test.php | |
2018-08-14 20:13 | derick | Note Added: 0004694 | |
2018-08-14 20:13 | derick | Status | new => resolved |
2018-08-14 20:13 | derick | Resolution | open => not fixable |
2018-08-14 20:13 | derick | Assigned To | => derick |
2020-03-12 16:33 | derick | Category | Remote Debugging => Step Debugging |