← Back to index
|
Original Bugzilla link
Bug 10612 – Regression (2.064 HEAD): ICE on using enum as hash key with mutual module imports
Status
RESOLVED
Resolution
FIXED
Severity
regression
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2013-07-11T09:12:00Z
Last change time
2013-07-13T04:26:30Z
Keywords
ice, pull
Assigned to
nobody
Creator
andrej.mitrovich
Comments
Comment #0
by andrej.mitrovich — 2013-07-11T09:12:42Z
test.d: ----- module test; import foo; enum E { a, } ----- foo.d: ----- module foo; import test; string[E] es; ----- 2.063 $ dmd -c test.d > 2.064: $ dmd -c test.d > assert mtype.c(7524) sym->memtype It fails if the enum is used as the hash key type, but it works if it's used as the hash value type. Stack trace: ----- 0018ef8c 00465bd8 image00400000!halt+0x5 [mars.c @ 314] 0018efa0 0045fd93 image00400000!TypeEnum::nextOf+0x3a [mtype.c @ 7528] 0018efdc 0045f63c image00400000!TypeAArray::semantic+0x12d [mtype.c @ 4522] 0018f004 00488b48 image00400000!TypeDArray::semantic+0x1d [mtype.c @ 4267] 0018f828 00477050 image00400000!VarDeclaration::semantic+0x30f [declaration.c @ 907] 0018f854 004086a3 image00400000!AttribDeclaration::semantic+0x6c [attrib.c @ 163] 0018f890 00470e66 image00400000!Module::semantic+0x10e [module.c @ 734] 0018f940 004086a3 image00400000!Import::semantic+0x110 [import.c @ 245] 0018f97c 00470e66 image00400000!Module::semantic+0x10e [module.c @ 734] 0018fa2c 00476fbd image00400000!Import::semantic+0x110 [import.c @ 245] 0018fa60 0047814e image00400000!AttribDeclaration::semanticNewSc+0xf3 [attrib.c @ 142] 0018fa88 004086a3 image00400000!ProtDeclaration::semantic+0x2f [attrib.c @ 735] 0018fac4 00405062 image00400000!Module::semantic+0x10e [module.c @ 734] 0018ff0c 00405a2c image00400000!tryMain+0x2b28 [mars.c @ 1480] 0018ff48 00576bad image00400000!main+0x43 [mars.c @ 1716] 0018ff88 764733ca image00400000!mainCRTStartup+0xa9 0018ff94 77549ed2 kernel32!BaseThreadInitThunk+0xe 0018ffd4 77549ea5 ntdll!__RtlUserThreadStart+0x70 -----
Comment #1
by henning — 2013-07-11T13:19:07Z
https://github.com/D-Programming-Language/dmd/pull/2336
Comment #2
by github-bugzilla — 2013-07-13T04:26:12Z
Commits pushed to master at
https://github.com/D-Programming-Language/dmd
https://github.com/D-Programming-Language/dmd/commit/797832d6d2537f1e75f58550b55bdcc6fdef32a9
fix issue 10612 - ICE on using enum as hash key with mutual module imports
https://github.com/D-Programming-Language/dmd/commit/a608afd9b4d756bb4be3f5ebfa8bb471176be04d
Merge pull request #2336 from hpohl/10612 [REG2.064a] fix issue 10612 - ICE on using enum as hash key with mutual module imports