Fix Issue 10311 - GDB prints wrong value for variable updated from closure

Redone https://github.com/D-Programming-Language/dmd/pull/4063, now using struct type for closure and Sscope for pointer.