homepage

This issue tracker has been migrated to GitHub , and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author pitrou
Recipients benjamin.peterson, georg.brandl, pitrou, rhettinger
Date 2008年07月26日.12:37:04
SpamBayes Score 0.0005474687
Marked as misclassified No
Message-id <1217075829.32.0.899703595301.issue3356@psf.upfronthosting.co.za>
In-reply-to
Content
Hmm, ok. I was using `make EXTRA_CFLAGS="-DPy_DEBUG"`, but it wouldn't
undefine NDEBUG so the assert() macro wouldn't be enabled.
By using `make EXTRA_CFLAGS="-DPy_DEBUG -UNDEBUG"` instead it's fine.
But that makes test_c_api in setobject.c bogus, because it relies on the
execution of assert() statements to modify the refcount of certain
objects - which doesn't happen when assert() is optimized out. The only
reason it doesn't crash in non-debug mode is that the deallocated
objects are still intact in memory, and Py_REFCNT simply drops their
refcount field to -1 without bothering.
It also means the following statement in Misc/SpecialBuilds.txt is
misleading:
« Py_DEBUG implies LLTRACE, Py_REF_DEBUG, Py_TRACE_REFS, and
PYMALLOC_DEBUG (if WITH_PYMALLOC is enabled). In addition, C
assert()s are enabled (via the C way: by not defining NDEBUG) »
I haven't looked at the distutils problem yet.
History
Date User Action Args
2008年07月26日 12:37:11pitrousetspambayes_score: 0.000547469 -> 0.0005474687
recipients: + pitrou, georg.brandl, rhettinger, benjamin.peterson
2008年07月26日 12:37:09pitrousetspambayes_score: 0.000547469 -> 0.000547469
messageid: <1217075829.32.0.899703595301.issue3356@psf.upfronthosting.co.za>
2008年07月26日 12:37:06pitroulinkissue3356 messages
2008年07月26日 12:37:05pitroucreate

AltStyle によって変換されたページ (->オリジナル) /