[Issue 1787] Compiler segfaults on circular references.

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sat Apr 18 00:47:30 PDT 2009


http://d.puremagic.com/issues/show_bug.cgi?id=1787


clugdbug at yahoo.com.au changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |patch
         OS/Version|Linux                       |All




------- Comment #2 from clugdbug at yahoo.com.au  2009-04-18 02:47 -------
(In reply to comment #1)
> Related to issue 713?
> 
> WFM 1.035 Windows.  Has it gone away, or is it platform parity?
> 
The first example now works, but the second one segfaults:
struct C {
  const x = C.x;
}
Segfaults on DMD2.028 and 1.042 Windows.

I've patched it so that it displays:
bug.d(2): Error: variable bug.C.x cannot infer type

Patch against DMD2.028 in void VarDeclaration::semantic(Scope *sc).

Index: declaration.c
===================================================================
--- declaration.c       (revision 22)
+++ declaration.c       (working copy)
@@ -688,6 +688,7 @@
     if (!type)
     {  inuse++;
        type = init->inferType(sc);
+       if (!type) { error("cannot infer type"); return; } 
        inuse--;
        inferred = 1;


-- 



More information about the Digitalmars-d-bugs mailing list