From a937d14898e8e396a1c9acc0fbd2db5209d1a6ce Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Fri, 24 Apr 1998 18:22:02 +0000 Subject: [PATCH] Fred's right -- we need PyList_SET_ITEM(). --- Doc/api.tex | 5 +++++ Doc/api/api.tex | 5 +++++ Include/listobject.h | 1 + Python/bltinmodule.c | 2 +- 4 files changed, 12 insertions(+), 1 deletion(-) diff --git a/Doc/api.tex b/Doc/api.tex index 5f168f2f982..b0b7bfd14aa 100644 --- a/Doc/api.tex +++ b/Doc/api.tex @@ -1953,6 +1953,11 @@ Returns a new tuple object containing the contents of \var{list}. Macro form of \cfunction{PyList_GetItem()} without error checking. \end{cfuncdesc} +\begin{cfuncdesc}{PyObject*}{PyList_SET_ITEM}{PyObject *list, int i, + PyObject *o} +Macro form of \cfunction{PyList_SetItem()} without error checking. +\end{cfuncdesc} + \begin{cfuncdesc}{int}{PyList_GET_SIZE}{PyObject *list} Macro form of \cfunction{PyList_GetSize()} without error checking. \end{cfuncdesc} diff --git a/Doc/api/api.tex b/Doc/api/api.tex index 5f168f2f982..b0b7bfd14aa 100644 --- a/Doc/api/api.tex +++ b/Doc/api/api.tex @@ -1953,6 +1953,11 @@ Returns a new tuple object containing the contents of \var{list}. Macro form of \cfunction{PyList_GetItem()} without error checking. \end{cfuncdesc} +\begin{cfuncdesc}{PyObject*}{PyList_SET_ITEM}{PyObject *list, int i, + PyObject *o} +Macro form of \cfunction{PyList_SetItem()} without error checking. +\end{cfuncdesc} + \begin{cfuncdesc}{int}{PyList_GET_SIZE}{PyObject *list} Macro form of \cfunction{PyList_GetSize()} without error checking. \end{cfuncdesc} diff --git a/Include/listobject.h b/Include/listobject.h index c1bbcc17f5e..e99acef1b96 100644 --- a/Include/listobject.h +++ b/Include/listobject.h @@ -74,6 +74,7 @@ extern PyObject *PyList_AsTuple Py_PROTO((PyObject *)); /* Macro, trading safety for speed */ #define PyList_GET_ITEM(op, i) (((PyListObject *)(op))->ob_item[i]) +#define PyList_SET_ITEM(op, i, v) (((PyListObject *)(op))->ob_item[i] = (v)) #define PyList_GET_SIZE(op) (((PyListObject *)(op))->ob_size) #ifdef __cplusplus diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c index 8a4215bad5c..fd31405733d 100644 --- a/Python/bltinmodule.c +++ b/Python/bltinmodule.c @@ -1282,7 +1282,7 @@ builtin_range(self, args) Py_DECREF(v); return NULL; } - PyList_GET_ITEM(v, i) = w; + PyList_SET_ITEM(v, i, w); ilow += istep; } return v;