Bug 982 – Codeview: symbols of enum type are declared integer

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
All
OS
Windows
Creation time
2007-02-19T04:33:27Z
Last change time
2019-08-23T01:46:37Z
Keywords
DebugInfo, pull
Assigned to
No Owner
Creator
Jascha Wetzel

Comments

Comment #0 by jascha — 2007-02-19T04:33:27Z
Although the correct typestring for enum types exists, symbols of that type are marked as being integers (T_INT4) instead of using the custom type.
Comment #1 by r.sagitario — 2017-07-22T08:14:30Z
still in git master
Comment #2 by r.sagitario — 2019-08-20T20:55:50Z
Still in dmd 2.087.1. Example: enum EE { E1, E2, E3 } void main() { EE e = EE.E1; } >dmd -m64 -g test.d >cvdump.exe test.obj | grep.exe -C5 "D main" (000044) S_GPROC32: [0000:00000000], Cb: 00000012, Type: 0x106E, D main Parent: 00000000, End: 00000000, Next: 00000000 Debug start: 00000008, Debug end: 0000000D (000072) S_ENDARG (000076) S_REGREL32: rbp+FFFFFFF8, Type: T_INT4(0074), e
Comment #3 by dlang-bot — 2019-08-21T06:53:28Z
@rainers created dlang/dmd pull request #10328 "fix Issue 4372, 982 - CodeView: type of enumerator values reduced to …" fixing this issue: - fix Issue 4372, 982 - CodeView: type of enumerator values reduced to base type in debug info write a forward reference to the enum definition, it is emitted elsewhere https://github.com/dlang/dmd/pull/10328
Comment #4 by dlang-bot — 2019-08-23T01:46:37Z
dlang/dmd pull request #10328 "fix Issue 4372, 982 - CodeView: type of enumerator values reduced to …" was merged into master: - f4e4b7e6ff66ec4d0d2774f309731c03392327cc by Rainer Schuetze: fix Issue 4372, 982 - CodeView: type of enumerator values reduced to base type in debug info write a forward reference to the enum definition, it is emitted elsewhere https://github.com/dlang/dmd/pull/10328