]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
gh-111178: Fix function signatures in longobject.c (#124895)
authorVictor Stinner <vstinner@python.org>
Wed, 2 Oct 2024 15:41:19 +0000 (17:41 +0200)
committerGitHub <noreply@github.com>
Wed, 2 Oct 2024 15:41:19 +0000 (17:41 +0200)
commit113b2d7583cdbf79da18e696f299a9aca24b599b
treeca4dbc894695882f5aaab3302c1d4d59c24a2c1a
parent29951c8471f4b4283493c8e3f768d967d0bdd564
gh-111178: Fix function signatures in longobject.c (#124895)

* Add _PyLong_CAST() macro.
* Move forward declarations to the top of longobject.c.
* Change long_add(), long_sub(), long_mul(), long_neg(),
  long_lshift(), long_abs() to take PyLongObject* and return
  PyLongObject*. Avoid CHECK_BINOP() test.
* Add long_add_method(), long_sub_method(), long_mul_method(),
  long_neg_method(), long_lshift_method(), and long_abs_method()
  which take PyObject* and return PyObject*. Implement CHECK_BINOP()
  test.
* Add long_lshift_int64() function.
* _PyLong_DivmodNear() calls long_lshift_int64(obj, 1) instead of
  long_lshift_obj(obj, one).
Include/cpython/longobject.h
Objects/longobject.c