| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
|
🤖 New build scheduled with the buildbot fleet by @arhadthedev for commit 286fdc9 🤖 If you want to schedule another build, you need to add the 🔨 test-with-buildbots label again. |
Sorry, something went wrong.
|
@markshannon as an author of gh-103083 this PR fixes. |
Sorry, something went wrong.
| { | ||
| _PyObject_IMMORTAL_REFCNT, | ||
| &PyBaseObject_Type | ||
| .ob_refcnt = _PyObject_IMMORTAL_REFCNT, |
There was a problem hiding this comment.
Explicit setting of these fields seems a bit odd to me.
@markshannon should review and merge it since this is recently introduced file.
Sorry, something went wrong.
|
I think the use of named initializers is fine. Since we can always change it to use macros later, and this fixes compilation, I'm merging this. |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
If Py_TRACE_REFS is defined, PyObject initializers without field names like:
cpython/Python/instrumentation.c
Lines 17 to 21 in 2b6f5c3
The reason is implicit insertion of two extra fields under #ifdef Py_TRACE_REFS:
cpython/Include/object.h
Lines 102 to 106 in 2b6f5c3
cpython/Include/object.h
Lines 65 to 76 in 2b6f5c3
This commit fixes declarations that fail the AMD64 Arch Linux TraceRefs PR buildbot. Other declarations will be fixed in another, pending PR. (edit: all other places use _PyObject_HEAD_EXTRA)
I desided to not use _PyObject_HEAD_EXTRA because it can be forgotten easily (unlike explicit field names) so we should phase it out from CPython codebase if possible.