Closed
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.