Building with x86_64, I see two dmd flow control differences from x86 32
bit, which is odd.
std/math.d(1958): Error: function std.math.IeeeFlags.getIeeeFlags has no
return statement, but is expected to return a value of type uint
std/math.d(2162): Warning: statement is not reachable
The first part looks legit. DMD 32 should have detected that one.
The second part looks bogus. DMD 64 isn't handling that right.
This fixes both, but...
Index: std/math.d
===================================================================
--- std/math.d (revision 2212)
+++ std/math.d (working copy)
@@ -1965,8 +1965,6 @@
// Clear all irrelevant bits
and EAX, 0x03D;
}
- } else version (PPC) {
- assert(0, "Not yet supported");
} else version (SPARC) {
/*
int retval;
@@ -1974,7 +1972,8 @@
return retval;
*/
assert(0, "Not yet supported");
- }
+ } else
+ assert(0, "Not yet supported");
}
static void resetIeeeFlags()
{
@@ -2156,10 +2155,10 @@
xor EAX, EAX;
fstcw cont;
}
+ return cont;
}
else
assert(0, "Not yet supported");
- return cont;
}
// Set the control register
static void setControlState(ushort newState)
On Tue, 7 Dec 2010, dsource.org wrote:
> Date: Tue, 7 Dec 2010 19:47:29 -0500
> From: dsource.org <[email protected]>
> Reply-To: Discuss the phobos library for D <[email protected]>
> To: [email protected]
> Subject: [phobos] phobos commit, revision 2212
>
> phobos commit, revision 2212
>
>
> user: Don Clugston
>
> msg:
> 5321: std.math: assumes X86 or X86_64 on FPU control word code
>
> http://www.dsource.org/projects/phobos/changeset/2212
>
> _______________________________________________
> phobos mailing list
> [email protected]
> http://lists.puremagic.com/mailman/listinfo/phobos
>
_______________________________________________
phobos mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/phobos