[Python-Dev] possible memory leak on windows (valgrind report)

Neal Norwitz nnorwitz at gmail.com
Wed Sep 21 22:33:51 CEST 2005

On 9/21/05, "Martin v. Löwis" <martin at v.loewis.de> wrote:
> Neal Norwitz wrote:
> > (I need to write a lot more suppression rules for gentoo.)
> This could be due to your using GCC 4. Apparently, gcc 4
> is willing to inline Py_ADDRESS_IN_RANGE even though it
> appears at the end of the file, at -O3.

I don't think I'm using gcc 4.

> To suppress that, you can declare the function as
> __attribute__((noinline)). You will need to conditionalize
> this on gcc, but not only that: it appears that noinline
> was one of the more recent additions. I'm not sure when
> it was added, but apparently, it is present in 3.3 and
> later.

This is a good point.  I recall when I made Py_ADDRESS_IN_RANGE the
docs said that anything could be inlined.  I think it would be good to
use this attribute (conditionally of course).  I'll try to remember to
add this.

I wonder if using attributes for other features would gain us much.  I
would really like to be able to use attributes for
PyArgs_ParseTuple(), but I don't think gcc can use user defined
formats.  It's only printf AFAIR.  Does anyone know if this isn't true
and we can define our own format -> type mappings?


More information about the Python-Dev mailing list