From: Tim Peters Date: Thu, 1 Nov 2001 23:59:56 +0000 (+0000) Subject: float_divmod(): the code wasn't sick enough to stop the MS optimizer X-Git-Tag: v2.2.1c1~914 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=4e8ab5db38c84e981f1e4cd11fd375bf7469341e;p=python float_divmod(): the code wasn't sick enough to stop the MS optimizer from optimizing away mod's sign adjustment when mod == 0; so it got the intended result only in the debug build. --- diff --git a/Objects/floatobject.c b/Objects/floatobject.c index 7e12a09885..cdc9620c02 100644 --- a/Objects/floatobject.c +++ b/Objects/floatobject.c @@ -476,7 +476,7 @@ float_divmod(PyObject *v, PyObject *w) fmod returns different results across platforms; ensure it has the same sign as the denominator; we'd like to do "mod = wx * 0.0", but that may get optimized away */ - mod = 0.0; + mod *= mod; /* hide "mod = +0" from optimizer */ if (wx < 0.0) mod = -mod; }