digitalmars.D.bugs - [Issue 3101] New: Compiler hangs with 100% CPU load
- d-bugmail puremagic.com (21/21) Jun 28 2009 http://d.puremagic.com/issues/show_bug.cgi?id=3101
- d-bugmail puremagic.com (8/8) Jun 28 2009 http://d.puremagic.com/issues/show_bug.cgi?id=3101
- d-bugmail puremagic.com (24/25) Jul 09 2009 http://d.puremagic.com/issues/show_bug.cgi?id=3101
- d-bugmail puremagic.com (26/26) Aug 12 2009 http://d.puremagic.com/issues/show_bug.cgi?id=3101
- d-bugmail puremagic.com (12/12) Oct 13 2009 http://d.puremagic.com/issues/show_bug.cgi?id=3101
http://d.puremagic.com/issues/show_bug.cgi?id=3101 Summary: Compiler hangs with 100% CPU load Product: D Version: 2.030 Platform: Other OS/Version: Linux Status: NEW Keywords: ice-on-invalid-code Severity: normal Priority: P2 Component: DMD AssignedTo: nobody puremagic.com ReportedBy: jason.james.house gmail.com The attached code demonstrates the issue. Below is the compilation command used to reproduce the bug (and the output from dmd before it hung) dmd -gc -O -release main.d -ofmain error: foo is not shared (1) main.d(4): Error: declaration T is already defined -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Jun 28 2009
http://d.puremagic.com/issues/show_bug.cgi?id=3101 18:28:35 PDT --- Created an attachment (id=407) --> (http://d.puremagic.com/issues/attachment.cgi?id=407) file demonstrating issue -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Jun 28 2009
http://d.puremagic.com/issues/show_bug.cgi?id=3101 Don <clugdbug yahoo.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |clugdbug yahoo.com.au Version|2.030 |1.042 Summary|Compiler hangs with 100% |Stack overflow: declaring |CPU load |aggregate member twice with | |static if OS/Version|Linux |All Reduced test case (Windows): --- struct foo{ static if (is(int T == int)) {} static if (is(int T == int)) {} } ----dmd ice.dice.d(3): Error: declaration T is already defined Stack overflow On DMD1, it stack overflows without error message. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Jul 09 2009
http://d.puremagic.com/issues/show_bug.cgi?id=3101 Don <clugdbug yahoo.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch Patch is very easy. in int AliasDeclaration::overloadInsert(Dsymbol *s), make sure it doesn't call itself. Index: declaration.c =================================================================== --- declaration.c (revision 194) +++ declaration.c (working copy) -543,6 +543,8 { overnext = s; return TRUE; } + else if (overnext==this) // a recursive expansion would ensue. Bugzilla 3101 + return FALSE; else { return overnext->overloadInsert(s); -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Aug 12 2009
http://d.puremagic.com/issues/show_bug.cgi?id=3101 Walter Bright <bugzilla digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |bugzilla digitalmars.com Resolution| |FIXED 13:45:47 PDT --- Fixed dmd 1.049 and 2.034 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Oct 13 2009