Bug 2432 – complex alias -> mtype.c:125: virtual Type* Type::syntaxCopy(): Assertion `0' failed.

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D1 (retired)
Platform
x86
OS
All
Creation time
2008-10-27T00:29:00Z
Last change time
2014-03-01T00:36:12Z
Keywords
ice-on-valid-code, patch
Assigned to
bugzilla
Creator
shro8822

Attachments

IDFilenameSummaryContent-TypeSize
276bug.dtest casetext/plain643

Comments

Comment #0 by shro8822 — 2008-10-27T00:29:48Z
ldc seem to have fixed this: http://dsource.org/projects/ldc/changeset/486%3Aa34078905d01/dmd/mtype.c test case to be attached
Comment #1 by shro8822 — 2008-10-27T00:30:27Z
Created attachment 276 test case
Comment #2 by smjg — 2008-11-24T10:59:05Z
Still fails if the C and D middlemen are cut out (1.039 Windows): ---------- template Tuple(T...) { alias T Tuple; } enum J { N } template A(){ const J M = J.N; } template B(){ alias A!() G; } alias Tuple!(Tuple!(B!())[0].G) L; pragma(msg, L.stringof); ---------- bz2432.d(8): Error: expression A!() is not a valid template value argument bz2432.d(8): template instance bz2432.Tuple!(A!()) error instantiating J 00192E30 ty = 9 Assertion failure: '0' on line 125 in file 'mtype.c' ----------
Comment #3 by bugzilla — 2009-07-09T02:47:21Z
Fixed dmd 1.046 and 2.031