summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2024-03-18 19:16:58 (GMT)
committerGitHub <noreply@github.com>2024-03-18 19:16:58 (GMT)
commita9c304cf020e2fa3ae78fd88359dfc808c9dd639 (patch)
tree27d72813f8a5f84f89f4c551efd1c5d07d2eda1f
parent590a26010d5d7f27890f89820645580bb8f28547 (diff)
downloadcpython-a9c304cf020e2fa3ae78fd88359dfc808c9dd639.zip
cpython-a9c304cf020e2fa3ae78fd88359dfc808c9dd639.tar.gz
cpython-a9c304cf020e2fa3ae78fd88359dfc808c9dd639.tar.bz2
gh-116869: Make C API compatible with ISO C90 (#116950)
Make the C API compatible with -Werror=declaration-after-statement compiler flag again.
-rw-r--r--Include/cpython/longintrepr.h3
-rw-r--r--Include/object.h3
-rw-r--r--Misc/NEWS.d/next/C API/2024-03-18-09-58-46.gh-issue-116869.LFDVKM.rst2
3 files changed, 5 insertions, 3 deletions
diff --git a/Include/cpython/longintrepr.h b/Include/cpython/longintrepr.h
index f037c7b..3246908 100644
--- a/Include/cpython/longintrepr.h
+++ b/Include/cpython/longintrepr.h
@@ -129,9 +129,10 @@ _PyLong_IsCompact(const PyLongObject* op) {
static inline Py_ssize_t
_PyLong_CompactValue(const PyLongObject *op)
{
+ Py_ssize_t sign;
assert(PyType_HasFeature((op)->ob_base.ob_type, Py_TPFLAGS_LONG_SUBCLASS));
assert(PyUnstable_Long_IsCompact(op));
- Py_ssize_t sign = 1 - (op->long_value.lv_tag & _PyLong_SIGN_MASK);
+ sign = 1 - (op->long_value.lv_tag & _PyLong_SIGN_MASK);
return sign * (Py_ssize_t)op->long_value.ob_digit[0];
}
diff --git a/Include/object.h b/Include/object.h
index 34141af..b0c0dba 100644
--- a/Include/object.h
+++ b/Include/object.h
@@ -343,8 +343,7 @@ PyAPI_DATA(PyTypeObject) PyBool_Type;
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
assert(ob->ob_type != &PyLong_Type);
assert(ob->ob_type != &PyBool_Type);
- PyVarObject *var_ob = _PyVarObject_CAST(ob);
- return var_ob->ob_size;
+ return _PyVarObject_CAST(ob)->ob_size;
}
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000
# define Py_SIZE(ob) Py_SIZE(_PyObject_CAST(ob))
diff --git a/Misc/NEWS.d/next/C API/2024-03-18-09-58-46.gh-issue-116869.LFDVKM.rst b/Misc/NEWS.d/next/C API/2024-03-18-09-58-46.gh-issue-116869.LFDVKM.rst
new file mode 100644
index 0000000..9b9d943
--- /dev/null
+++ b/Misc/NEWS.d/next/C API/2024-03-18-09-58-46.gh-issue-116869.LFDVKM.rst
@@ -0,0 +1,2 @@
+Make the C API compatible with ``-Werror=declaration-after-statement``
+compiler flag again. Patch by Victor Stinner.