bpo-35081: Move _PyObject_GC_TRACK() to pycore_object.h by vstinner · Pull Request #10276 · python/cpython · GitHub
Skip to content

bpo-35081: Move _PyObject_GC_TRACK() to pycore_object.h - #10276

Closed
vstinner wants to merge 1 commit into
python:masterfrom
vstinner:object_track2
Closed

vstinner wants to merge 1 commit into
python:masterfrom
vstinner:object_track2

Conversation

@vstinner

@vstinner vstinner commented Nov 1, 2018

Copy link
Copy Markdown
Member
  • Create Include/internal/pycore_object.h
  • Move _PyObject_GC_TRACK() and _PyObject_GC_UNTRACK() macros to
    pycore_object.h
  • Remove _PyGC_generation0: replaced with _PyRuntime.gc.generation0
  • Replace _PyObject_GC_UNTRACK() with PyObject_GC_UnTrack()
    in _queuemodule.c. The file is compiled without Py_BUILD_CORE.
  • Python.h now automatically includes pycore_object.h

https://bugs.python.org/issue35081

@vstinner

vstinner commented Nov 1, 2018

Copy link
Copy Markdown
Member Author

@vstinner

vstinner commented Nov 1, 2018

Copy link
Copy Markdown
Member Author

Note for myself: PR #10275 has to be updated if this PR is merged before.

* Create Include/internal/pycore_object.h
* Move _PyObject_GC_TRACK() and _PyObject_GC_UNTRACK() macros to
  pycore_object.h
* Remove _PyGC_generation0: replaced with _PyRuntime.gc.generation0
* Python.h now automatically includes pycore_object.h
@vstinner

Copy link
Copy Markdown
Member Author

PR #10507 has been merged: I rewrote and rebased this change on top of master.

@vstinner

Copy link
Copy Markdown
Member Author

I don't understand why compilation fails on AppVeyor:

c:\projects\cpython\python\pytime.c(581): error C2037: left of 'tv_sec' specifies undefined struct/union 'timeval' [C:\projects\cpython\PCbuild\pythoncore.vcxproj]

@vstinner

Copy link
Copy Markdown
Member Author

@vstinner vstinner closed this Nov 21, 2018
@vstinner
vstinner deleted the object_track2 branch November 21, 2018 21:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants