digitalmars.D.bugs - [Issue 8517] New: ICE: Internal error: toir.c 178
- d-bugmail puremagic.com (28/28) Aug 07 2012 http://d.puremagic.com/issues/show_bug.cgi?id=8517
- d-bugmail puremagic.com (23/23) Nov 14 2012 http://d.puremagic.com/issues/show_bug.cgi?id=8517
- d-bugmail puremagic.com (17/17) Oct 03 2013 http://d.puremagic.com/issues/show_bug.cgi?id=8517
http://d.puremagic.com/issues/show_bug.cgi?id=8517 Summary: ICE: Internal error: toir.c 178 Product: D Version: D2 Platform: All OS/Version: All Status: NEW Keywords: ice Severity: normal Priority: P2 Component: DMD AssignedTo: nobody puremagic.com ReportedBy: michal.minich gmail.com PDT --- dmd 2.060 void x1 () { y!(a => a)(); } void x2 () { y!(a => a)(); } void y (alias f) () { y!(a => a)(); } Comment out either x1 or x2 line and error disappears. This bug might be a duplicate of http://d.puremagic.com/issues/show_bug.cgi?id=8460 http://d.puremagic.com/issues/show_bug.cgi?id=8436 http://d.puremagic.com/issues/show_bug.cgi?id=7917 http://d.puremagic.com/issues/show_bug.cgi?id=6426 and maybe others -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Aug 07 2012
http://d.puremagic.com/issues/show_bug.cgi?id=8517 Don <clugdbug yahoo.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- Version|D2 |D1 & D2 Summary|ICE(toir.c 178) |ICE(toir.c 178) or stack | |overflow with recursive | |alias template Actually y!() is the problem, the other bit is just instantiating y. Also stack overflows on D1 and 2.057. The reason is, that the FQN of the delegate includes the FQN of the template. You can see this if you use .mangleof (uncomment the pragma). Simplified test case: void y (alias f) () { int delegate(int) qq; // pragma(msg, qq.mangleof); y!(qq)(); } void x1() { int q; y!(q)(); } -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Nov 14 2012
http://d.puremagic.com/issues/show_bug.cgi?id=8517 Walter Bright <bugzilla digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |bugzilla digitalmars.com Resolution| |WORKSFORME 18:03:52 PDT --- With 2.064 head: Michal's example: test.d(1): Error: template instance test.x1.y!((a) => a) recursive expansion Don's example: test.d(7): Error: template instance test.x1.y!(q) recursive expansion Works on D1 1.077 too. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Oct 03 2013