[Bug 42] New: enable-checking error found in std/regexp.d

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sun Mar 12 11:16:06 PST 2006


http://d.puremagic.com/bugzilla/show_bug.cgi?id=42

           Summary: enable-checking error found in std/regexp.d
           Product: GDC
           Version: 0.17
          Platform: Macintosh
        OS/Version: Mac OS X
            Status: NEW
          Keywords: ice-on-valid-code, patch
          Severity: normal
          Priority: P2
         Component: glue layer
        AssignedTo: braddr at puremagic.com
        ReportedBy: braddr at puremagic.com


reduced test case:

module std.regexp;
class RegExp
{
    class Range { }
    void parseRange()
    {
        Range r = new Range();
    }
}

proposed patch from our irc discussion, does _not_ fix the problem:

--- d-glue.cc.orig   2006-03-11 21:37:48.000000000 -0600
+++ d-glue.cc        2006-03-12 13:11:42.000000000 -0600
@@ -2195,6 +2195,7 @@
            Dsymbol * d = cd->toParent();

            tree vthis_field = cd->vthis->toSymbol()->Stree;
+            t =
d_convert_basic(Type::tvoid->pointerTo()->pointerTo()->toCtype(), t);
            t = irs->component(
                               build1(INDIRECT_REF, TREE_TYPE(TREE_TYPE(t)),
t),
                               vthis_field);


-- 




More information about the D.gnu mailing list