The Linux version of the compiler generates debug information for internal, temporary variables (named _TMPxx, where xx is a number). This clutters the debugger views with needless information.
Happens on Windows too, at least when debugging in VC6.
Is this still relevant?
Yes, I still see all the temporary variables in the locals view when debugging on windows.
The frontend uses '__' prefixed variables for temporaries. They are not handled specially by the backend, therefor the debug info.
https://github.com/D-Programming-Language/dmd/pull/2904