[Lldb-commits] [lldb] [llvm] [lldb] Add initial MicrosoftABIRuntime (PR #235090)
via lldb-commits
lldb-commits at lists.llvm.org
Sat Oct 31 14:44:15 PDT 2026
================
@@ -260,37 +270,41 @@ def examine_value_object_of_this_ptr(
contained_b_static = contained_auto_ptr.GetChildMemberWithName(
"__ptr_", no_dynamic
)
+ if not contained_b_static:
+ contained_b_static = contained_auto_ptr.GetChildMemberWithName(
+ "_Myptr", no_dynamic
+ )
self.assertTrue(contained_b_static)
contained_b_addr = int(contained_b.GetValue(), 16)
contained_b_static_addr = int(contained_b_static.GetValue(), 16)
self.assertLess(contained_b_addr, contained_b_static_addr)
- @no_debug_info_test
- @expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr24663")
def test_from_forward_decl(self):
"""Test fetching C++ dynamic values forward-declared types. It's
imperative that this is a separate test so that we don't end up parsing
a definition of A from somewhere else."""
self.build()
- lldbutil.run_to_name_breakpoint(self, "take_A")
+ lldbutil.run_to_line_breakpoint(
----------------
Nerixyz wrote:
Looks like this wasn't needed, but the change in `forward_a.cpp` was. If you have
```cpp
A *take_A(A *a) { return a; }
```
and try to print `a`, there won't be a location for it (with PDB). I haven't investigated further where exactly we stop. I'm guessing we might stop at the first instruction whereas with DWARF, we'd stop after the stack is set-up?
https://github.com/llvm/llvm-project/pull/235090
More information about the lldb-commits
mailing list