Bug 11516 – Wrong symbol in debug watch due to name collision

Status
RESOLVED
Resolution
DUPLICATE
Severity
major
Priority
P2
Component
visuald
Product
D
Version
D2
Platform
All
OS
Windows
Creation time
2013-11-14T10:26:00Z
Last change time
2015-06-09T05:15:10Z
Assigned to
nobody
Creator
ehysta

Comments

Comment #0 by ehysta — 2013-11-14T10:26:16Z
Example: if(0) { byte key = 12; key -= 2; log.trace(key); } else { byte key = 0; key++; log.trace(key); } In watch we can see only an uninitialized first variable (e.g -1) even code path evaluated to lines below. Mago debugger, latest VisualD version. (cv2pdb isn't work)
Comment #1 by r.sagitario — 2013-11-16T00:59:47Z
The problem here is that dmd does not emit information about the life time of a variable, they are all considered valid for the whole function (see also issue 3657). The locals window shows both variables. > (cv2pdb isn't work) Is this because you are using VS2013 (not yet supported)? Or is this a separate issue?
Comment #2 by ehysta — 2013-11-18T00:25:01Z
*** This issue has been marked as a duplicate of issue 3657 ***