Skip to content

Commit eaf45c9

Browse files
committed
bpo-27961: Replace PY_LLONG_MAX, PY_LLONG_MIN and PY_ULLONG_MAX with standard macros
1 parent 18f8dcf commit eaf45c9

File tree

5 files changed

+27
-27
lines changed

5 files changed

+27
-27
lines changed

Doc/c-api/long.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -195,8 +195,8 @@ distinguished from a number. Use :c:func:`PyErr_Occurred` to disambiguate.
195195
:meth:`__int__` method (if present) to convert it to a
196196
:c:type:`PyLongObject`.
197197
198-
If the value of *obj* is greater than :const:`PY_LLONG_MAX` or less than
199-
:const:`PY_LLONG_MIN`, set *\*overflow* to ``1`` or ``-1``, respectively,
198+
If the value of *obj* is greater than :const:`LLONG_MAX` or less than
199+
:const:`LLONG_MIN`, set *\*overflow* to ``1`` or ``-1``, respectively,
200200
and return ``-1``; otherwise, set *\*overflow* to ``0``. If any other
201201
exception occurs set *\*overflow* to ``0`` and return ``-1`` as usual.
202202

Include/pythread.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -51,16 +51,16 @@ PyAPI_FUNC(int) PyThread_acquire_lock(PyThread_type_lock, int);
5151
#if defined(_POSIX_THREADS)
5252
/* PyThread_acquire_lock_timed() uses _PyTime_FromNanoseconds(us * 1000),
5353
convert microseconds to nanoseconds. */
54-
# define PY_TIMEOUT_MAX (PY_LLONG_MAX / 1000)
54+
# define PY_TIMEOUT_MAX (LLONG_MAX / 1000)
5555
#elif defined (NT_THREADS)
5656
/* In the NT API, the timeout is a DWORD and is expressed in milliseconds */
57-
# if 0xFFFFFFFFLL * 1000 < PY_LLONG_MAX
57+
# if 0xFFFFFFFFLL * 1000 < LLONG_MAX
5858
# define PY_TIMEOUT_MAX (0xFFFFFFFFLL * 1000)
5959
# else
60-
# define PY_TIMEOUT_MAX PY_LLONG_MAX
60+
# define PY_TIMEOUT_MAX LLONG_MAX
6161
# endif
6262
#else
63-
# define PY_TIMEOUT_MAX PY_LLONG_MAX
63+
# define PY_TIMEOUT_MAX LLONG_MAX
6464
#endif
6565

6666

Modules/_sqlite/util.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ PyObject *
107107
_pysqlite_long_from_int64(sqlite_int64 value)
108108
{
109109
# if SIZEOF_LONG_LONG < 8
110-
if (value > PY_LLONG_MAX || value < PY_LLONG_MIN) {
110+
if (value > LLONG_MAX || value < LLONG_MIN) {
111111
return _PyLong_FromByteArray(&value, sizeof(value),
112112
IS_LITTLE_ENDIAN, 1 /* signed */);
113113
}

Modules/_testcapimodule.c

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -637,7 +637,7 @@ test_long_long_and_overflow(PyObject *self, PyObject *Py_UNUSED(ignored))
637637
int overflow;
638638

639639
/* Test that overflow is set properly for a large value. */
640-
/* num is a number larger than PY_LLONG_MAX on a typical machine. */
640+
/* num is a number larger than LLONG_MAX on a typical machine. */
641641
num = PyLong_FromString("FFFFFFFFFFFFFFFFFFFFFFFF", NULL, 16);
642642
if (num == NULL)
643643
return NULL;
@@ -653,8 +653,8 @@ test_long_long_and_overflow(PyObject *self, PyObject *Py_UNUSED(ignored))
653653
return raiseTestError("test_long_long_and_overflow",
654654
"overflow was not set to 1");
655655

656-
/* Same again, with num = PY_LLONG_MAX + 1 */
657-
num = PyLong_FromLongLong(PY_LLONG_MAX);
656+
/* Same again, with num = LLONG_MAX + 1 */
657+
num = PyLong_FromLongLong(LLONG_MAX);
658658
if (num == NULL)
659659
return NULL;
660660
one = PyLong_FromLong(1L);
@@ -681,7 +681,7 @@ test_long_long_and_overflow(PyObject *self, PyObject *Py_UNUSED(ignored))
681681
"overflow was not set to 1");
682682

683683
/* Test that overflow is set properly for a large negative value. */
684-
/* num is a number smaller than PY_LLONG_MIN on a typical platform */
684+
/* num is a number smaller than LLONG_MIN on a typical platform */
685685
num = PyLong_FromString("-FFFFFFFFFFFFFFFFFFFFFFFF", NULL, 16);
686686
if (num == NULL)
687687
return NULL;
@@ -697,8 +697,8 @@ test_long_long_and_overflow(PyObject *self, PyObject *Py_UNUSED(ignored))
697697
return raiseTestError("test_long_long_and_overflow",
698698
"overflow was not set to -1");
699699

700-
/* Same again, with num = PY_LLONG_MIN - 1 */
701-
num = PyLong_FromLongLong(PY_LLONG_MIN);
700+
/* Same again, with num = LLONG_MIN - 1 */
701+
num = PyLong_FromLongLong(LLONG_MIN);
702702
if (num == NULL)
703703
return NULL;
704704
one = PyLong_FromLong(1L);
@@ -755,32 +755,32 @@ test_long_long_and_overflow(PyObject *self, PyObject *Py_UNUSED(ignored))
755755
return raiseTestError("test_long_long_and_overflow",
756756
"overflow was set incorrectly");
757757

758-
num = PyLong_FromLongLong(PY_LLONG_MAX);
758+
num = PyLong_FromLongLong(LLONG_MAX);
759759
if (num == NULL)
760760
return NULL;
761761
overflow = 1234;
762762
value = PyLong_AsLongLongAndOverflow(num, &overflow);
763763
Py_DECREF(num);
764764
if (value == -1 && PyErr_Occurred())
765765
return NULL;
766-
if (value != PY_LLONG_MAX)
766+
if (value != LLONG_MAX)
767767
return raiseTestError("test_long_long_and_overflow",
768-
"expected return value PY_LLONG_MAX");
768+
"expected return value LLONG_MAX");
769769
if (overflow != 0)
770770
return raiseTestError("test_long_long_and_overflow",
771771
"overflow was not cleared");
772772

773-
num = PyLong_FromLongLong(PY_LLONG_MIN);
773+
num = PyLong_FromLongLong(LLONG_MIN);
774774
if (num == NULL)
775775
return NULL;
776776
overflow = 0;
777777
value = PyLong_AsLongLongAndOverflow(num, &overflow);
778778
Py_DECREF(num);
779779
if (value == -1 && PyErr_Occurred())
780780
return NULL;
781-
if (value != PY_LLONG_MIN)
781+
if (value != LLONG_MIN)
782782
return raiseTestError("test_long_long_and_overflow",
783-
"expected return value PY_LLONG_MIN");
783+
"expected return value LLONG_MIN");
784784
if (overflow != 0)
785785
return raiseTestError("test_long_long_and_overflow",
786786
"overflow was not cleared");
@@ -6109,9 +6109,9 @@ PyInit__testcapi(void)
61096109
PyModule_AddObject(m, "FLT_MIN", PyFloat_FromDouble(FLT_MIN));
61106110
PyModule_AddObject(m, "DBL_MAX", PyFloat_FromDouble(DBL_MAX));
61116111
PyModule_AddObject(m, "DBL_MIN", PyFloat_FromDouble(DBL_MIN));
6112-
PyModule_AddObject(m, "LLONG_MAX", PyLong_FromLongLong(PY_LLONG_MAX));
6113-
PyModule_AddObject(m, "LLONG_MIN", PyLong_FromLongLong(PY_LLONG_MIN));
6114-
PyModule_AddObject(m, "ULLONG_MAX", PyLong_FromUnsignedLongLong(PY_ULLONG_MAX));
6112+
PyModule_AddObject(m, "LLONG_MAX", PyLong_FromLongLong(LLONG_MAX));
6113+
PyModule_AddObject(m, "LLONG_MIN", PyLong_FromLongLong(LLONG_MIN));
6114+
PyModule_AddObject(m, "ULLONG_MAX", PyLong_FromUnsignedLongLong(ULLONG_MAX));
61156115
PyModule_AddObject(m, "PY_SSIZE_T_MAX", PyLong_FromSsize_t(PY_SSIZE_T_MAX));
61166116
PyModule_AddObject(m, "PY_SSIZE_T_MIN", PyLong_FromSsize_t(PY_SSIZE_T_MIN));
61176117
PyModule_AddObject(m, "SIZEOF_PYGC_HEAD", PyLong_FromSsize_t(sizeof(PyGC_Head)));

Objects/longobject.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1133,7 +1133,7 @@ PyLong_AsVoidPtr(PyObject *vv)
11331133
* rewritten to use the newer PyLong_{As,From}ByteArray API.
11341134
*/
11351135

1136-
#define PY_ABS_LLONG_MIN (0-(unsigned long long)PY_LLONG_MIN)
1136+
#define PY_ABS_LLONG_MIN (0-(unsigned long long)LLONG_MIN)
11371137

11381138
/* Create a new int object from a C long long int. */
11391139

@@ -1488,11 +1488,11 @@ PyLong_AsLongLongAndOverflow(PyObject *vv, int *overflow)
14881488
/* Haven't lost any bits, but casting to long requires extra
14891489
* care (see comment above).
14901490
*/
1491-
if (x <= (unsigned long long)PY_LLONG_MAX) {
1491+
if (x <= (unsigned long long)LLONG_MAX) {
14921492
res = (long long)x * sign;
14931493
}
14941494
else if (sign < 0 && x == PY_ABS_LLONG_MIN) {
1495-
res = PY_LLONG_MIN;
1495+
res = LLONG_MIN;
14961496
}
14971497
else {
14981498
*overflow = sign;
@@ -5045,7 +5045,7 @@ _PyLong_GCD(PyObject *aarg, PyObject *barg)
50455045
/* a fits into a long, so b must too */
50465046
x = PyLong_AsLong((PyObject *)a);
50475047
y = PyLong_AsLong((PyObject *)b);
5048-
#elif PY_LLONG_MAX >> PyLong_SHIFT >> PyLong_SHIFT
5048+
#elif LLONG_MAX >> PyLong_SHIFT >> PyLong_SHIFT
50495049
x = PyLong_AsLongLong((PyObject *)a);
50505050
y = PyLong_AsLongLong((PyObject *)b);
50515051
#else
@@ -5064,7 +5064,7 @@ _PyLong_GCD(PyObject *aarg, PyObject *barg)
50645064
}
50655065
#if LONG_MAX >> PyLong_SHIFT >> PyLong_SHIFT
50665066
return PyLong_FromLong(x);
5067-
#elif PY_LLONG_MAX >> PyLong_SHIFT >> PyLong_SHIFT
5067+
#elif LLONG_MAX >> PyLong_SHIFT >> PyLong_SHIFT
50685068
return PyLong_FromLongLong(x);
50695069
#else
50705070
# error "_PyLong_GCD"

0 commit comments

Comments
 (0)