[Issue 865] in overloaded-function, class A should matches (Object) better than (void*)

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sat Nov 8 11:15:14 PST 2008


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


gide at nwawudu.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |RESOLVED
         Resolution|                            |WORKSFORME




------- Comment #4 from gide at nwawudu.com  2008-11-08 13:15 -------
The example given compiles on DMD 1.033.

C:> cat ts.d
import std.string;
import std.stdio;

class A{}

struct B{
  char[] toString()  {return "B";}
}

int c;

char[] toStringFunc(Object obj) {return obj.toString();}
char[] toStringFunc(int i)      {return format(i);}
char[] toStringFunc(void*  obj) {return "null";}

class S(T) {
  T obj;

char[] toString() {
  return toStringFunc(obj);
}

}

int main(char[][] args) {
  S!(A)   sa;
  S!(B*)  sb;
  S!(int) sc;

  writefln("%.*s", sa.toString());
  writefln("%.*s", sb.toString());
  writefln("%.*s", sc.toString());

  return 0;
}


-- 



More information about the Digitalmars-d-bugs mailing list