digitalmars.D.bugs - [Issue 4925] New: [ICE] segfault with module-scope assert(0)
- d-bugmail puremagic.com (35/35) Sep 23 2010 http://d.puremagic.com/issues/show_bug.cgi?id=4925
- d-bugmail puremagic.com (12/12) Sep 27 2010 http://d.puremagic.com/issues/show_bug.cgi?id=4925
http://d.puremagic.com/issues/show_bug.cgi?id=4925 Summary: [ICE] segfault with module-scope assert(0) Product: D Version: D1 & D2 Platform: All OS/Version: All Status: NEW Keywords: ice-on-valid-code, patch Severity: normal Priority: P2 Component: DMD AssignedTo: nobody puremagic.com ReportedBy: rsinfu gmail.com --- The following code crashes the compiler: const int a = (assert(0), 1); Patch: --- src/expression.c +++ src/expression.c -5695,8 +5695,11 Expression *AssertExp::semantic(Scope *sc) } if (e1->isBool(FALSE)) { - FuncDeclaration *fd = sc->parent->isFuncDeclaration(); - fd->hasReturnExp |= 4; + if (sc->parent && sc->parent->isFuncDeclaration()) + { + FuncDeclaration *fd = sc->parent->isFuncDeclaration(); + fd->hasReturnExp |= 4; + } if (!global.params.useAssert) { Expression *e = new HaltExp(loc); -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Sep 23 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4925 Walter Bright <bugzilla digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |bugzilla digitalmars.com Resolution| |FIXED 19:57:26 PDT --- http://www.dsource.org/projects/dmd/changeset/694 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Sep 27 2010