Mark Dickinson
0da94c8a34
Silence 'r may be used uninitialized' compiler warning.
2008-04-21 01:55:50 +00:00
Mark Dickinson
92483cd8da
math.atan2 is misbehaving on Windows; this patch
...
should fix the problem in the same way that
the cmath.phase problems were fixed.
2008-04-20 21:39:04 +00:00
Mark Dickinson
cec3f138d8
Yet more explicit special case handling to make
...
math.pow behave on alpha Tru64. All IEEE 754
special values are now handled directly; only
the finite**finite case is handled by libm.
2008-04-20 04:13:13 +00:00
Mark Dickinson
b2f7090239
FreeBSD doesn't follow C99 for modf(inf); so add explicit
...
special-value handling to math.modf code.
2008-04-20 01:39:24 +00:00
Mark Dickinson
a1293eb65f
Additional special-case handling for math.pow.
...
Windows/VS2008 doesn't like (-1)**(+-inf).
2008-04-19 19:41:52 +00:00
Mark Dickinson
e941d97d12
Additional tests for math.pow, and extra special-case
...
handling code in math.pow, in the hope of making all
tests pass on the alpha Tru64 buildbot.
2008-04-19 18:51:48 +00:00
Christian Heimes
6f34109384
I finally got the time to update and merge Mark's and my trunk-math branch. The patch is collaborated work of Mark Dickinson and me. It was mostly done a few months ago. The patch fixes a lot of loose ends and edge cases related to operations with NaN, INF, very small values and complex math.
...
The patch also adds acosh, asinh, atanh, log1p and copysign to all platforms. Finally it fixes differences between platforms like different results or exceptions for edge cases. Have fun :)
2008-04-18 23:13:07 +00:00
Raymond Hettinger
fe424f754f
Neaten-up a bit.
2008-02-02 05:24:44 +00:00
Jeffrey Yasskin
ca2b69f765
Move __builtins__.trunc() to math.trunc() per
...
http://mail.python.org/pipermail/python-dev/2008-January/076626.html and issue
1965.
2008-02-01 06:22:46 +00:00
Christian Heimes
543cabc842
setup.py doesn't pick up changes to a header file
2008-01-25 14:54:23 +00:00
Neal Norwitz
5f95a79b2b
Add prototypes to get the mathmodule.c to compile on OSF1 5.1 (Tru64)
...
and eliminate a compiler warning in floatobject.c. There might be
a better way to go about this, but it should be good enough for now.
2008-01-25 08:04:16 +00:00
Jeffrey Yasskin
9871d8fe22
Continue rolling back pep-3141 changes that changed behavior from 2.5. This
...
round included:
* Revert round to its 2.6 behavior (half away from 0).
* Because round, floor, and ceil always return float again, it's no
longer necessary to have them delegate to __xxx___, so I've ripped
that out of their implementations and the Real ABC. This also helps
in implementing types that work in both 2.6 and 3.0: you return int
from the __xxx__ methods, and let it get enabled by the version
upgrade.
* Make pow(-1, .5) raise a ValueError again.
2008-01-05 08:47:13 +00:00
Christian Heimes
66ecda4990
Fixed math.copysign() on Windows
2008-01-04 01:48:50 +00:00
Christian Heimes
eebb79cc69
Added copysign(x, y) function to the math module
2008-01-03 22:32:26 +00:00
Christian Heimes
e2ca4245c9
Added math.isinf() and math.isnan()
2008-01-03 20:23:15 +00:00
Jeffrey Yasskin
2f3c16be73
Backport PEP 3141 from the py3k branch to the trunk. This includes r50877 (just
...
the complex_pow part), r56649, r56652, r56715, r57296, r57302, r57359, r57361,
r57372, r57738, r57739, r58017, r58039, r58040, and r59390, and new
documentation. The only significant difference is that round(x) returns a float
to preserve backward-compatibility. See http://bugs.python.org/issue1689 .
2008-01-03 02:21:52 +00:00
Neal Norwitz
45e230a8e1
Speed up function calls into the math module by using METH_O.
...
There should be no functional changes. However, the error msgs are
slightly different. Also verified that the module dict is not NULL on init.
2006-11-19 21:26:53 +00:00
Georg Brandl
a355c14fa1
Whoops.
2006-05-29 22:00:30 +00:00
Georg Brandl
bf92f46572
Convert more modules to METH_VARARGS.
2006-05-29 21:58:42 +00:00
Neal Norwitz
1ac754fa10
Check return result from Py_InitModule*(). This API can fail.
...
Probably should be backported.
2006-01-19 06:09:39 +00:00
Michael W. Hudson
9ef852c6c2
Make that a C, not a C++, comment.
2005-04-06 13:05:18 +00:00
Michael W. Hudson
2ea3072805
Add a comment explaining the import of longintrepr.h.
2005-04-06 11:27:40 +00:00
Hye-Shik Chang
77d9a3effa
Patch #871657 : Set EDOM for `nan' return values on FreeBSD and OpenBSD.
...
This fixes a problem that math.sqrt(-1) doesn't raise math.error.
2004-03-22 08:43:55 +00:00
Jack Jansen
fb2765666f
Getting rid of support for the ancient Apple MPW compiler.
2003-11-19 15:24:47 +00:00
Raymond Hettinger
8ae4689657
Simplify and speedup uses of Py_BuildValue():
...
* Py_BuildValue("(OOO)",a,b,c) --> PyTuple_Pack(3,a,b,c)
* Py_BuildValue("()",a) --> PyTuple_New(0)
* Py_BuildValue("O", a) --> Py_INCREF(a)
2003-10-12 19:09:37 +00:00