Skip to content

Commit 2369b31

Browse files
committed
Always inline frozensetwriter_update_array()
Simplify writer_dealloc()
1 parent 0c2a852 commit 2369b31

2 files changed

Lines changed: 3 additions & 4 deletions

File tree

‎Modules/_testcapi/set.c‎

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -103,9 +103,7 @@ writer_dealloc(PyObject *self_raw)
103103
{
104104
WriterObject *self = (WriterObject *)self_raw;
105105
PyTypeObject *tp = Py_TYPE(self);
106-
if (self->writer) {
107-
PyFrozenSetWriter_Discard(self->writer);
108-
}
106+
PyFrozenSetWriter_Discard(self->writer);
109107
tp->tp_free(self);
110108
Py_DECREF(tp);
111109
}

‎Objects/setobject.c‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3354,7 +3354,8 @@ PyFrozenSetWriter_Update(PyFrozenSetWriter *writer, PyObject *iterable)
33543354
}
33553355

33563356

3357-
static inline int
3357+
// Force inlining to optimize "if (steal)" at build time
3358+
static inline Py_ALWAYS_INLINE int
33583359
frozensetwriter_update_array(PyFrozenSetWriter *writer,
33593360
PyObject *const *items, Py_ssize_t nitem,
33603361
int steal)

0 commit comments

Comments
 (0)