[Issue 18451] [REG 2.076.1] In certain circumstances, calling remove on an array of delegates fails

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sat Feb 17 14:55:00 UTC 2018


https://issues.dlang.org/show_bug.cgi?id=18451

--- Comment #2 from ArturG <var.spool.mail700 at gmail.com> ---
its actually not only remove this fail also:

    void delegate(void*) dg = delegate(void*){ writeln("test"); };
    void delegate(void*) dg2;
    void delegate(void*)[] dgs = [dg,dg,dg,dg];
    //pragma(msg, isInputRange!(typeof(dgs)));
    //assert(isInputRange!(typeof(dgs)));
    dgs.writeln;
    void delegate(void*)[] dgs2 = [null, null, null, null];
    //moveAll(dgs, dgs2);
    //move(dgs.front, dgs2.front);
    move(dg, dg2);
    dg2(null);

and this actually works:
    void delegate(void*) dg = delegate(void*){ writeln("test"); };
    void delegate(void*) dg2;
    void delegate(void*)[] dgs = [dg,dg,dg,dg];
    void delegate(void*)[] dgs2 = [null, null, null, null];
    dgs.writeln;
    moveAll(dgs, dgs2);
    move(dgs.front, dgs2.front);
    move(dg, dg2);
    dg2(null);

--


More information about the Digitalmars-d-bugs mailing list