digitalmars.D.bugs - [Issue 2851] New: Segfault using C-style struct initializer with too few arguments
- d-bugmail puremagic.com (24/24) Apr 17 2009 http://d.puremagic.com/issues/show_bug.cgi?id=2851
- d-bugmail puremagic.com (11/11) May 14 2009 http://d.puremagic.com/issues/show_bug.cgi?id=2851
- d-bugmail puremagic.com (11/11) May 15 2009 http://d.puremagic.com/issues/show_bug.cgi?id=2851
- d-bugmail puremagic.com (12/12) May 15 2009 http://d.puremagic.com/issues/show_bug.cgi?id=2851
- d-bugmail puremagic.com (15/15) Aug 13 2009 http://d.puremagic.com/issues/show_bug.cgi?id=2851
- d-bugmail puremagic.com (11/11) Oct 13 2009 http://d.puremagic.com/issues/show_bug.cgi?id=2851
http://d.puremagic.com/issues/show_bug.cgi?id=2851 Summary: Segfault using C-style struct initializer with too few arguments Product: D Version: 2.027 Platform: PC OS/Version: Windows Status: NEW Keywords: accepts-invalid, ice-on-invalid-code Severity: normal Priority: P2 Component: DMD AssignedTo: bugzilla digitalmars.com ReportedBy: clugdbug yahoo.com.au The bug is that it doesn't check that the number of members in the initializer is correct. It's silently accepted as long as you don't access an uninitialised member; if you do, the compiler segfaults. ---- struct Test{ int foo; } enum Test test = {}; enum q = test.foo; --
Apr 17 2009
http://d.puremagic.com/issues/show_bug.cgi?id=2851 Fixed in DMD2.030, NOT FIXED in DMD1.045. struct Test{ int foo; } const Test test = {}; const q = test.foo; -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
May 14 2009
http://d.puremagic.com/issues/show_bug.cgi?id=2851 Walter Bright <bugzilla digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED 12:19:00 PDT --- Fixed dmd 2.030 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
May 15 2009
http://d.puremagic.com/issues/show_bug.cgi?id=2851 Gide Nwawudu <gide nwawudu.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED CC| |gide nwawudu.com Resolution|FIXED | Re-opened because DMD 1.045 segfaults. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
May 15 2009
http://d.puremagic.com/issues/show_bug.cgi?id=2851 Don <clugdbug yahoo.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch Seems like this was just missed in copying from D2 to D1. Segfaulting in StructLiteralExp::getFieldIndex() in expression.c. PATCH: Just copy int StructLiteralExp::getFieldIndex(Type *type, unsigned offset) (line 3197) from D2 to D1. (Needs if(elements->dim){ ... } around the for loop). -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Aug 13 2009
http://d.puremagic.com/issues/show_bug.cgi?id=2851 Walter Bright <bugzilla digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|REOPENED |RESOLVED Resolution| |FIXED 13:51:30 PDT --- Fixed dmd 1.049 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Oct 13 2009