[Issue 4638] New: Regression: new writeln does not recognize "wstring toString"

d-bugmail at puremagic.com d-bugmail at puremagic.com
Thu Aug 12 20:38:36 PDT 2010


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

           Summary: Regression: new writeln does not recognize "wstring
                    toString"
           Product: D
           Version: D2
          Platform: Other
        OS/Version: Windows
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Phobos
        AssignedTo: nobody at puremagic.com
        ReportedBy: lio+bugzilla at lunesu.com


--- Comment #0 from Lionello Lunesu <lio+bugzilla at lunesu.com> 2010-08-12 20:38:35 PDT ---
In 2.047, a struct could provide a toString that returned a wstring (as opposed
to string) and it would get used when passing the struct to writeln. 

As of 2.048 a toString returning wstring is not detected and the struct's
typename is returned instead. toString returning string works fine.

Repro:

import std.stdio;
import std.conv;

struct A
{
  wstring toString() { return "blah"; }
}

void main()
{
  A a;
  writeln(a);
  writeln(to!string(a));
  writeln(to!wstring(a));
}

DMD 2.047:
blah
blah
blah

DMD 2.048:
A
blah
blah

-- 
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