In debugging, arguments are always shown instead of locals
- Dominant language
- F#
- Stars
- 4.3k
- Forks
- 876
- Avg merge
- 4d 11h
- Merged PRs (30d)
- 131
Description
Given this:
```
let inp = seq { 1 .. 3 }
let h3 x =
for x in inp do
printfn $"hello, x = {x}"
printfn "hello"
h3 10
```
then when you stop inside the loop, the value `x` shows as `10` even though in the loop it is `1`, `2`, `3`. The locals simply aren't shown at all.
I'm not actually sure there is a fix to this without #2544 knowing how to resolve the names according to F# rules. It looks to me like the C# locals display is simply deciding not to show any locals that conflict with an argument name (which they never do according to C# rules)
Note this may have changed in recent VS, I've not seen the problem before, though it's likely it's just always been there.
Contributor guide
Assessment
This issue has not been assessed yet.