www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 1761] New: __traits(getVirtualFunctions, ...) doesn't give function parameter types

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

           Summary: __traits(getVirtualFunctions, ...) doesn't give function
                    parameter types
           Product: D
           Version: 2.009
          Platform: PC
        OS/Version: Windows
            Status: NEW
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: bugzilla digitalmars.com
        ReportedBy: mi_emayl_adrez hotmail.com


class C
{
   void func() {}
   void func(int a) {}
   void func(int a, int b) {}
}

void main()
{
   foreach (t; __traits(getVirtualFunctions, C, "func"))
      writefln(typeid(typeof(t)));
}

prints:
void()
void()
void()

it would be more useful if it did:
void()
void(int)
void(int, int)


-- 
Jan 01 2008
parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=1761


smjg iname.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |smjg iname.com
  BugsThisDependsOn|                            |1519
            Summary|__traits(getVirtualFunctions|TypeInfo.toString for
                   |, ...) doesn't give function|function types always
                   |parameter types             |indicates no-parameter
                   |                            |function





It's not a problem with traits, it's a problem with the TypeInfo for
functions/delegates.


-- 
Sep 09 2008