[Bug 31214] New: Don't stop on line 0

Bug ID 31214
Summary Don’t stop on line 0
Product lldb
Version unspecified
Hardware PC
OS Windows NT
Status NEW
Severity normal
Priority P
Component All Bugs
Assignee lldb-dev@lists.llvm.org
Reporter paul_robinson@playstation.sony.com
CC llvm-bugs@lists.llvm.org
Classification Unclassified

Yesterday I tried committing LLVM r288212, which introduced a number of
line-table records with line number 0.  The DWARF spec says this means
there is no particular source location associated with those instructions.

I was expecting LLDB to ignore line-0 records, but apparently it does not.
[http://lab.llvm.org:8011/builders/lldb-x86_64-ubuntu-14.04-cmake/builds/1537](http://lab.llvm.org:8011/builders/lldb-x86_64-ubuntu-14.04-cmake/builds/1537)
reported 3 test failures:

FAIL: TestExitDuringStep.ExitDuringStepTestCase.test_dwarf
FAIL: TestExitDuringStep.ExitDuringStepTestCase.test_dwo
FAIL: TestExitDuringStep.ExitDuringStepTestCase.test_gmodules

And looking at the traces, it seems that there was a single-step expecting
to stop on line 30 but found itself stopped on line 0.

I thought I had tried this with LLDB before, but apparently I didn't
follow the website instructions correctly.  (I'm still seeing more
failures and other funny stuff than I expected, but if I apply or
remove my patch it's still the same 3 tests that get different results,
so I'm not going to worry about it.)

LLDB should not stop on an instruction associated with line 0.
It should proceed to the next instruction with a non-zero line number.

Paul Robinson changed bug 31214

What Removed Added
Status NEW RESOLVED
Resolution FIXED

Comment # 4 on bug 31214 from Paul Robinson

r288282 made the test work with "line 0" when stepping by instruction.