[Issue 9834] template+class+FunctionLiteral=AccessViolation

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sat Mar 30 12:13:11 PDT 2013


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



--- Comment #1 from Kenji Hara <k.hara.pg at gmail.com> 2013-03-30 12:13:10 PDT ---
(In reply to comment #0)
> And, following is git bisect result:
> $ git bisect bad
> 67fbf5753e9d4a276c354e952ed2f888efcb714c is the first bad commit

The commit is not a root cause.
If change Event struct to non-template, and add pure to set method, AV still
occurs.

struct Event {
    void delegate() dg;
  //void set(void delegate() h)      { dg = h; }  // no AV
    void set(void delegate() h) pure { dg = h; }  // AV occurs
    void call() { dg(); }
}
void main() {
    Event ev;
    auto a = new class {
        Object o;
        this() {
            o = new Object;
            ev.set((){ o.toString(); });
        }
    };
    ev.call();
}

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the Digitalmars-d-bugs mailing list