[Issue 11863] New: std.conv.to!string(int/uint, radix) returns incorrect string
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Fri Jan 3 10:38:48 PST 2014
https://d.puremagic.com/issues/show_bug.cgi?id=11863
Summary: std.conv.to!string(int/uint, radix) returns incorrect
string
Product: D
Version: D2
Platform: x86
OS/Version: Windows
Status: NEW
Severity: normal
Priority: P2
Component: Phobos
AssignedTo: nobody at puremagic.com
ReportedBy: electrolysis.jp+d at gmail.com
--- Comment #0 from e10s <electrolysis.jp+d at gmail.com> 2014-01-04 03:38:46 JST ---
import std.conv, std.stdio;
void main(){
/// int
static assert(to!string(15, 10) == "15"); // success
// assert(to!string(15, 10) == "15"); // failure
assert(to!wstring(15, 10) == "15"w); // success
assert(to!dstring(15, 10) == "15"d); // success
writeln(to!string(15, 10)); // ??
/// uint
static assert(to!string(15u, 10) == "15"); // success
// assert(to!string(15u, 10) == "15"); // failure
assert(to!wstring(15u, 10) == "15"w); // success
assert(to!dstring(15u, 10) == "15"d); // success
writeln(to!string(15u, 10)); // ??
/// long
static assert(to!string(15L, 10) == "15"); // success
assert(to!string(15L, 10) == "15"); // success
}
In the case of "(r)dmd foo.d", only to!string(int, radix) and
to!string(uint, radix) return "0" at run time with any radix
though "15" is returned when compiled with "-debug".
Environment: DMD 2.064.2 on Win7 SP1 32-bit
--
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list