[Python-Dev] Py_DECREF causes spurious gcc warning

Martin v. Löwis martin at v.loewis.de
Thu Dec 18 16:28:50 EST 2003


"Zack Weinberg" <zack at codesourcery.com> writes:

> > This is what leads to the bletcherous
> >
> >     do {
> >         the real macro guts go here
> >     } while(0)
> >
> > form of macro definition.  Py_DECREF could be rewritten in that form -- but
> > I've puked enough for one day <splat>.
> 
> Should, not just could.  Yeah, it's bletcherous, but it's the only
> way to be sure.  (Short of inline functions.)

Not true. As Tim explains, there is no possible application of the
macro which gets misinterpreted. We don't have a single if-statement,
we have an if-else-statement in the macro. That never leads to the
dangling else problem.

Regards,
Martin




More information about the Python-Dev mailing list