Skip to content

vectors and arrays are truncated in debug view. #14374

@bradphelan

Description

@bradphelan

Environment

  • OS and version: Windows 11
  • VS Code: latest
  • C/C++ extension: 0.4.6
  • GDB / LLDB version: microsoft debugger

Bug Summary and Steps to Reproduce

Image Problem Summary

When debugging large containers (e.g., vectors with thousands of elements), the VS Code debugger stops displaying element values after an arbitrary index. Instead, entries appear as empty ({}), even though the data is actually present.

Expanding an individual element reveals that the data exists and is correctly populated, which indicates this is a UI/display limitation rather than a data or debugger issue.

Expected Behavior

The debugger UI should:

  • Display values for all visible elements in the watch/locals window.
  • Use lazy loading / virtual scrolling to fetch only the elements currently in view.
  • Dynamically request additional data as the user scrolls.

Actual Behavior

After a certain number of elements, entries are shown as {} (empty).
Values only appear when manually expanding each node.
This makes inspecting large datasets impractical.

Impact

This significantly reduces the usability of the debugger for:

Numerical computing
Graphics / simulation data
Any workload involving large arrays or vectors

Performance optimizations (like limiting displayed elements) should not come at the cost of hiding valid data.

  • Suggested Improvement

Implement viewport-based data fetching:

  • Query debugger engine only for visible rows (with small buffer)
  • Load additional elements on scroll
  • Maintain responsiveness without sacrificing visibility

Metadata

Metadata

Assignees

Labels

bugdebuggermore info neededThe issue report is not actionable in its current state

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions