Skip to content

Commit a626f9a

Browse files
authored
Remove asserts that confuse enum _framestate with enum _frameowner (GH-124148)
The `owner` field of `_PyInterpreterFrame` is supposed to be a member of `enum _frameowner`, but `FRAME_CLEARED` is a member of `enum _framestate`. At present, it happens that `FRAME_CLEARED` is not numerically equal to any member of `enum _frameowner`, but that could change in the future. The code that incorrectly assigned `owner = FRAME_CLEARED` was deleted in commit a53cc3f (GH-116687). Remove the incorrect checks for `owner != FRAME_CLEARED` as well.
1 parent 58e9f95 commit a626f9a

File tree

1 file changed

+0
-2
lines changed

1 file changed

+0
-2
lines changed

Python/frame.c

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@ _PyFrame_MakeAndSetFrameObject(_PyInterpreterFrame *frame)
4040
// here.
4141
assert(frame->frame_obj == NULL);
4242
assert(frame->owner != FRAME_OWNED_BY_FRAME_OBJECT);
43-
assert(frame->owner != FRAME_CLEARED);
4443
f->f_frame = frame;
4544
frame->frame_obj = f;
4645
return f;
@@ -51,7 +50,6 @@ take_ownership(PyFrameObject *f, _PyInterpreterFrame *frame)
5150
{
5251
assert(frame->owner != FRAME_OWNED_BY_CSTACK);
5352
assert(frame->owner != FRAME_OWNED_BY_FRAME_OBJECT);
54-
assert(frame->owner != FRAME_CLEARED);
5553
Py_ssize_t size = ((char*)frame->stackpointer) - (char *)frame;
5654
memcpy((_PyInterpreterFrame *)f->_f_frame_data, frame, size);
5755
frame = (_PyInterpreterFrame *)f->_f_frame_data;

0 commit comments

Comments
 (0)