Skip to content

Commit 99e5607

Browse files
committed
improve UBSan failure fixes using our macro
1 parent a774384 commit 99e5607

File tree

1 file changed

+13
-13
lines changed

1 file changed

+13
-13
lines changed

Objects/codeobject.c

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1869,7 +1869,7 @@ free_monitoring_data(_PyCoMonitoringData *data)
18691869
static void
18701870
code_dealloc(PyObject *self)
18711871
{
1872-
PyCodeObject *co = (PyCodeObject *)self;
1872+
PyCodeObject *co = _PyCodeObject_CAST(self);
18731873
_PyObject_ResurrectStart(self);
18741874
notify_code_watchers(PY_CODE_EVENT_DESTROY, co);
18751875
if (_PyObject_ResurrectEnd(self)) {
@@ -1942,7 +1942,7 @@ code_dealloc(PyObject *self)
19421942
static int
19431943
code_traverse(PyObject *self, visitproc visit, void *arg)
19441944
{
1945-
PyCodeObject *co = (PyCodeObject*)self;
1945+
PyCodeObject *co = _PyCodeObject_CAST(self);
19461946
Py_VISIT(co->co_consts);
19471947
return 0;
19481948
}
@@ -1951,7 +1951,7 @@ code_traverse(PyObject *self, visitproc visit, void *arg)
19511951
static PyObject *
19521952
code_repr(PyObject *self)
19531953
{
1954-
PyCodeObject *co = (PyCodeObject*)self;
1954+
PyCodeObject *co = _PyCodeObject_CAST(self);
19551955
int lineno;
19561956
if (co->co_firstlineno != 0)
19571957
lineno = co->co_firstlineno;
@@ -2060,7 +2060,7 @@ code_richcompare(PyObject *self, PyObject *other, int op)
20602060
static Py_hash_t
20612061
code_hash(PyObject *self)
20622062
{
2063-
PyCodeObject *co = (PyCodeObject*)self;
2063+
PyCodeObject *co = _PyCodeObject_CAST(self);
20642064
Py_uhash_t uhash = 20221211;
20652065
#define SCRAMBLE_IN(H) do { \
20662066
uhash ^= (Py_uhash_t)(H); \
@@ -2123,7 +2123,7 @@ static PyMemberDef code_memberlist[] = {
21232123
static PyObject *
21242124
code_getlnotab(PyObject *self, void *closure)
21252125
{
2126-
PyCodeObject *code = (PyCodeObject*)self;
2126+
PyCodeObject *code = _PyCodeObject_CAST(self);
21272127
if (PyErr_WarnEx(PyExc_DeprecationWarning,
21282128
"co_lnotab is deprecated, use co_lines instead.",
21292129
1) < 0) {
@@ -2135,36 +2135,36 @@ code_getlnotab(PyObject *self, void *closure)
21352135
static PyObject *
21362136
code_getvarnames(PyObject *self, void *closure)
21372137
{
2138-
PyCodeObject *code = (PyCodeObject*)self;
2138+
PyCodeObject *code = _PyCodeObject_CAST(self);
21392139
return _PyCode_GetVarnames(code);
21402140
}
21412141

21422142
static PyObject *
21432143
code_getcellvars(PyObject *self, void *closure)
21442144
{
2145-
PyCodeObject *code = (PyCodeObject*)self;
2145+
PyCodeObject *code = _PyCodeObject_CAST(self);
21462146
return _PyCode_GetCellvars(code);
21472147
}
21482148

21492149
static PyObject *
21502150
code_getfreevars(PyObject *self, void *closure)
21512151
{
2152-
PyCodeObject *code = (PyCodeObject*)self;
2152+
PyCodeObject *code = _PyCodeObject_CAST(self);
21532153
return _PyCode_GetFreevars(code);
21542154
}
21552155

21562156
static PyObject *
21572157
code_getcodeadaptive(PyObject *self, void *closure)
21582158
{
2159-
PyCodeObject *code = (PyCodeObject*)self;
2159+
PyCodeObject *code = _PyCodeObject_CAST(self);
21602160
return PyBytes_FromStringAndSize(code->co_code_adaptive,
21612161
_PyCode_NBYTES(code));
21622162
}
21632163

21642164
static PyObject *
21652165
code_getcode(PyObject *self, void *closure)
21662166
{
2167-
PyCodeObject *code = (PyCodeObject*)self;
2167+
PyCodeObject *code = _PyCodeObject_CAST(self);
21682168
return _PyCode_GetCode(code);
21692169
}
21702170

@@ -2183,7 +2183,7 @@ static PyGetSetDef code_getsetlist[] = {
21832183
static PyObject *
21842184
code_sizeof(PyObject *self, PyObject *Py_UNUSED(args))
21852185
{
2186-
PyCodeObject *co = (PyCodeObject*)self;
2186+
PyCodeObject *co = _PyCodeObject_CAST(self);
21872187
size_t res = _PyObject_VAR_SIZE(Py_TYPE(co), Py_SIZE(co));
21882188
_PyCodeObjectExtra *co_extra = (_PyCodeObjectExtra*) co->co_extra;
21892189
if (co_extra != NULL) {
@@ -2196,14 +2196,14 @@ code_sizeof(PyObject *self, PyObject *Py_UNUSED(args))
21962196
static PyObject *
21972197
code_linesiterator(PyObject *self, PyObject *Py_UNUSED(args))
21982198
{
2199-
PyCodeObject *code = (PyCodeObject*)self;
2199+
PyCodeObject *code = _PyCodeObject_CAST(self);
22002200
return (PyObject *)new_linesiterator(code);
22012201
}
22022202

22032203
static PyObject *
22042204
code_branchesiterator(PyObject *self, PyObject *Py_UNUSED(args))
22052205
{
2206-
PyCodeObject *code = (PyCodeObject*)self;
2206+
PyCodeObject *code = _PyCodeObject_CAST(self);
22072207
return _PyInstrumentation_BranchesIterator(code);
22082208
}
22092209

0 commit comments

Comments
 (0)