From: mkaraev Date: Mon, 12 May 2025 12:17:17 +0000 (+0500) Subject: [3.13] gh-133904: Fix `math.factorial` documentation (GH-133907) (#133922) X-Git-Tag: v3.13.4~122 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=532acbd0fa3d9c6a889d76be6e5adc20fd097e77;p=thirdparty%2FPython%2Fcpython.git [3.13] gh-133904: Fix `math.factorial` documentation (GH-133907) (#133922) * [3.13] gh-133904: Fix `math.factorial` documentation (GH-133907) (cherry picked from commit 27ed64575d34f04029ba1d353810f3db4f4f045b) Co-authored-by: mkaraev Co-authored-by: sobolevn --- diff --git a/Doc/library/math.rst b/Doc/library/math.rst index 371bdae989ee..9f8c17bff6b9 100644 --- a/Doc/library/math.rst +++ b/Doc/library/math.rst @@ -144,8 +144,7 @@ Number-theoretic functions .. function:: factorial(n) - Return *n* factorial as an integer. Raises :exc:`ValueError` if *n* is not integral or - is negative. + Return factorial of the nonnegative integer *n*. .. versionchanged:: 3.10 Floats with integral values (like ``5.0``) are no longer accepted. diff --git a/Modules/clinic/mathmodule.c.h b/Modules/clinic/mathmodule.c.h index 81eec310ddb2..99534de0df64 100644 --- a/Modules/clinic/mathmodule.c.h +++ b/Modules/clinic/mathmodule.c.h @@ -54,9 +54,7 @@ PyDoc_STRVAR(math_factorial__doc__, "factorial($module, n, /)\n" "--\n" "\n" -"Find n!.\n" -"\n" -"Raise a ValueError if x is negative or non-integral."); +"Find n!."); #define MATH_FACTORIAL_METHODDEF \ {"factorial", (PyCFunction)math_factorial, METH_O, math_factorial__doc__}, @@ -1011,4 +1009,4 @@ math_ulp(PyObject *module, PyObject *arg) exit: return return_value; } -/*[clinic end generated code: output=755da3b1dbd9e45f input=a9049054013a1b77]*/ +/*[clinic end generated code: output=9fe02dc4af07c1e0 input=a9049054013a1b77]*/ diff --git a/Modules/mathmodule.c b/Modules/mathmodule.c index 64a497306b2a..2d56dc35731c 100644 --- a/Modules/mathmodule.c +++ b/Modules/mathmodule.c @@ -2009,13 +2009,11 @@ math.factorial / Find n!. - -Raise a ValueError if x is negative or non-integral. [clinic start generated code]*/ static PyObject * math_factorial(PyObject *module, PyObject *arg) -/*[clinic end generated code: output=6686f26fae00e9ca input=713fb771677e8c31]*/ +/*[clinic end generated code: output=6686f26fae00e9ca input=366cc321df3d4773]*/ { long x, two_valuation; int overflow;