[Python-Dev] Re: Proposal: C API Macro to decref and set to NULL (original) (raw)
David Abrahams dave at boost-consulting.com
Fri Jul 16 01:25:46 CEST 2004
- Previous message: WHUI! (was Re: [Python-Dev] Proposal: C API Macro to decref and set to NULL)
- Next message: [Python-Dev] Re: Proposal: C API Macro to decref and set to NULL
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Tim Peters <tim.peters at gmail.com> writes:
[Jim Fulton] ...
If there are no objections I'll add the following definition to object.h, after the definition for PyDECREF:
_#define PyCLEAR(op) _ _do { _ _if (op) { _ _PyObject *tmp = (op); _ _(op) = NULL; _ _PyDECREF(tmp); _ _} _ } while (0) and update the docs and the tutorial on creating types in C. +1. At least pystate.c can get rid of its functionally identical private ZAP macro then.
FWIW our experience in the C++ community suggests that deallocate-and-NULL tends to hide bugs. In general we prefer to use deallocate-and-fill-pointer-with-garbage. I'm not sure if the experience translates here, of course.
-- Dave Abrahams Boost Consulting http://www.boost-consulting.com
- Previous message: WHUI! (was Re: [Python-Dev] Proposal: C API Macro to decref and set to NULL)
- Next message: [Python-Dev] Re: Proposal: C API Macro to decref and set to NULL
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]