-
Notifications
You must be signed in to change notification settings - Fork 13.6k
Closed
Closed
Copy link
Labels
A-debuginfoArea: Debugging information in compiled programs (DWARF, PDB, etc.)Area: Debugging information in compiled programs (DWARF, PDB, etc.)C-bugCategory: This is a bug.Category: This is a bug.O-windows-msvcToolchain: MSVC, Operating system: WindowsToolchain: MSVC, Operating system: Windows
Description
Arguments passed via the ScalarPair abi cannot be correctly inspected via WinDbg or VS debuggers. This occurs because the platform debuggers expect the type to passed via a pointer (as the abi says they should) and the debuggers are hardcoded to expect that.
Example:
fn foo(r: Range<usize>) {
zzz(); // #break
}
Debuggers:
> dx r
r : 0x14 [Type: core::ops::range::Range<usize> *]
(Notice the *
in the type indicating the debugger expects to be looking at a pointer to the actual value, not it passed by value)
This is a more general version of #81894 which #81898 fixed for &str
and slices.
Metadata
Metadata
Assignees
Labels
A-debuginfoArea: Debugging information in compiled programs (DWARF, PDB, etc.)Area: Debugging information in compiled programs (DWARF, PDB, etc.)C-bugCategory: This is a bug.Category: This is a bug.O-windows-msvcToolchain: MSVC, Operating system: WindowsToolchain: MSVC, Operating system: Windows