<html>
<head>
<base href="https://llvm.org/bugs/" />
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW --- - Breakpoints not being resolved correctly"
href="https://llvm.org/bugs/show_bug.cgi?id=24668">24668</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>Breakpoints not being resolved correctly
</td>
</tr>
<tr>
<th>Product</th>
<td>lldb
</td>
</tr>
<tr>
<th>Version</th>
<td>unspecified
</td>
</tr>
<tr>
<th>Hardware</th>
<td>PC
</td>
</tr>
<tr>
<th>OS</th>
<td>Windows NT
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>normal
</td>
</tr>
<tr>
<th>Priority</th>
<td>P
</td>
</tr>
<tr>
<th>Component</th>
<td>All Bugs
</td>
</tr>
<tr>
<th>Assignee</th>
<td>lldb-dev@lists.llvm.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>zturner@google.com
</td>
</tr>
<tr>
<th>CC</th>
<td>llvm-bugs@lists.llvm.org
</td>
</tr>
<tr>
<th>Classification</th>
<td>Unclassified
</td>
</tr></table>
<p>
<div>
<pre>A number of tests which are seemingly unrelated fail because they all rely on
being able to set a breakpoint and then have it resolve dynamically once the
executable is run.
In certain instances, this doesn't work correctly on Windows, leading to output
similar to the following:
runCmd: breakpoint list -f
output: Current breakpoints:
1: file = 'main.cpp', line = 36, exact_match = 0, locations = 1
1.1: where = a.out`void * step_thread_func(void) + 3 at main.cpp:36, address
= a.out[0x00412023], unresolved, hit count = 0
Expecting sub string: 1: file = 'main.cpp', line = 36, locations = 1
Not matched
FAIL
Traceback (most recent call last):
File "D:\src\llvm\tools\lldb\test\lldbtest.py", line 615, in wrapper
func(*args, **kwargs)
File "D:\src\llvm\tools\lldb\test\lldbtest.py", line 615, in wrapper
func(*args, **kwargs)
File "D:\src\llvm\tools\lldb\test\lldbtest.py", line 615, in wrapper
func(*args, **kwargs)
File "D:\src\llvm\tools\lldb\test\lldbtest.py", line 551, in wrapper
return func(self, *args, **kwargs)
File
"D:\src\llvm\tools\lldb\test\functionalities\thread\create_during_step\TestCreateDuringStep.py",
line 46, in test_step_inst_with_dwarf
self.create_during_step_inst_test()
File
"D:\src\llvm\tools\lldb\test\functionalities\thread\create_during_step\TestCreateDuringStep.py",
line 75, in create_during_step_inst_test
self.create_during_step_base("thread step-inst -m all-threads", 'stop
reason = instruction step')
File
"D:\src\llvm\tools\lldb\test\functionalities\thread\create_during_step\TestCreateDuringStep.py",
line 95, in create_during_step_base
substrs = ["1: file = 'main.cpp', line = %d, locations = 1" %
self.breakpoint])
File "D:\src\llvm\tools\lldb\test\lldbtest.py", line 2630, in expect
msg if msg else EXP_MSG(str, exe))
AssertionError: False is not True : Breakpoint location shown correctly
As can be seen, the breakpoint is set, but it is unresolved so it has no
breakpoitn locations, causing the test to fail.
This affects (at a minimum) the following set of tests:
TestThreadStates.ThreadStateTestCase.test_process_interrupt_with_dwarf
TestThreadStates.ThreadStateTestCase.test_process_state_with_dwarf
TestCreateDuringStep.CreateDuringStepTestCase.test_step_in_with_dwarf
TestCreateDuringStep.CreateDuringStepTestCase.test_step_inst_with_dwarf
TestCreateDuringStep.CreateDuringStepTestCase.test_step_over_with_dwarf
TestExitDuringBreak.ExitDuringBreakpointTestCase.test_with_dwarf
TestMultipleBreakpoints.MultipleBreakpointTestCase.test_with_dwarf
TestThreadStates.ThreadStateTestCase.test_state_after_breakpoint_with_dwarf</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>