4 Commits

Author SHA1 Message Date
David Spickett
4bf82aebc0
[lldb][test] Fix TestChildCountTruncation on Windows (#149322)
By not forcing the DWARF debug info format. When left as the default,
the tests pass.

Test added by https://github.com/llvm/llvm-project/pull/149088.
2025-07-17 16:06:03 +01:00
David Spickett
ba5f31cfaa [lldb][test] Disable TestChildCountTruncation on Windows
This fails because it tells clang to use DWARF which link.exe
then discards.

The test may not need DWARF, but I'm going to confirm that in
a follow up PR review.

Test added by https://github.com/llvm/llvm-project/pull/149088.
2025-07-17 14:30:50 +00:00
Michael Buch
4797a6c4e8 [lldb][test] TestChildCountTruncation.test: add missing command 2025-07-17 10:49:05 +01:00
Michael Buch
8c28f4920d
[lldb] Print children-count warning for dwim-print and expr (#149088)
When dumping variables, LLDB will print a one-time warning about
truncating children (when the children count exceeds the default
`target.max-children-count`). But we only do this for `frame variable`.
So if we use `dwim-print` or `expression`, the output gets truncated but
we don't print a warning. But because we store the fact that we
truncated some output on the `CommandInterpreter`, we fire the warning
next time we use `frame variable`. E.g.,:
```
(lldb) p arr
(int[1000]) {
  [0] = -5
  [1] = 0
  [2] = 0
  <-- snipped -->
  [253] = 0
  [254] = 0
  [255] = 0
  ...
}
(lldb) v someLocal
(int) someLocal = 10
*** Some of the displayed variables have more members than the debugger
will show by default. To show all of them, you can either use the
--show-all-children option to frame variable or raise the limit by
changing the target.max-children-count setting.
```

This patch prints the warning for `dwim-print` and `expression`.

I only added a test for the `target.max-children-count` for now because
it seems the `target.max-children-depth` warning is broken (I can't get
it to fire).
2025-07-16 21:47:13 +01:00