www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 1711] New: typeof with delegate literal not allowed as template parameter

reply d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=1711

           Summary: typeof with delegate literal not allowed as template
                    parameter
           Product: D
           Version: 2.008
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Keywords: rejects-valid
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: bugzilla digitalmars.com
        ReportedBy: dhasenan gmail.com


template strof (T) {
    static string strof = T.stringof;
}

void main () {
    alias typeof(delegate () { return (invariant(char)[]).init;} ) del;
    // doesn't affect aliased type
    auto a = strof!(del);
    // doesn't affect non-delegate literal types
    auto aa = strof!(int);
    // doesn't affect non-delegates with typeof
    auto ab = strof!(typeof(5));
    // doesn't affect typeof with assigned variable
    auto meth = delegate () { return (invariant(char)[]).init;};
    auto b = strof!(typeof(meth));
    // rejects with delegate literal in typeof -- both of the following fail
    auto c = strof!(typeof(delegate () { return 5; } ));
    auto d = strof!(typeof(delegate () { return (invariant(char)[]).init;} ));
}


-- 
Dec 02 2007
parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=1711


bugzilla digitalmars.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED





Fixed dmd 1.026 and 2.010


-- 
Feb 16 2008