May 29, 2006
These two were reduced from Mango.
GDC 0.18, Ubuntu Linux 5.10, PPC.

//----------------
class Foo
{
        void bar (void * src)
        {
                void baz (void function (void *, uint) xyz)
                {
                        uint foo (void [] dst)
                        {
                                uint len = dst.length;
                                dst [0 .. len] = src [0 .. len];
                                xyz (dst, len);
                                return len;
                        }
                }
        }
}
//----------------

$ gdc -c -g test.d
test.d: En la función ‘foo’:
test.d:13: error interno del compilador: Violación de segmento
Por favor envíe un reporte completo de bichos,
con el código preprocesado si es apropiado.
Vea <URL:http://gcc.gnu.org/bugs.html> para más instrucciones.

//----------------
class Baz
{
        int opApply (int delegate(inout int) dg)
        {
                int i;
                return dg(i);
        }
}

class Foo
{
        Baz    baz;

        int foo (int delegate() dg)
        {
                foreach (b; baz)
                         if (bar ())
                            if (dg ())
                                break;
                return 0;
        }

        bool bar ()
        {}
}
//----------------

$ gdc -c -g test.d
test.d: En la función ‘__foreachbody1’:
test.d:16: error interno del compilador: Violación de segmento
Por favor envíe un reporte completo de bichos,
con el código preprocesado si es apropiado.
Vea <URL:http://gcc.gnu.org/bugs.html> para más instrucciones.


--
Carlos Santander Bernal
May 29, 2006
They both work with dmd. Please add them to bugzilla.