A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2001-May/014738.html below:

[Python-Dev] GC and ExtensionClass

[Python-Dev] GC and ExtensionClassGuido van Rossum guido@digicool.com
Sat, 12 May 2001 16:08:05 -0500
> At some point, extension classes used a literal copy of
> PyTypeObject. Unfortunately, that copy was made with Python 1.4 or so,
> and only had the spare fields that were expected then. Today,
> PyTypeObject has much more fields, so extension objects produce random
> errors (eg. with GC) when used in a modern interpreter (where the copy
> has not been synchronized). Whatever immediately follows the type
> object in memory may be interpreted as GC flag.

Not quite true.  ExtensionClasses (at least recent versions that
worked with 1.5.2) contain a copy of the type object up to and
including the tp_flags field, and the 2.1 code is careful not to use
any newer fields without first checking the corresponding flag bit.

Now, if you are using the 1.4 version of ExtensionClasses you might
not have the tp_flags field either (I don't know, I can't easily
check) but the 1.5.2-compatible version of ExtensionClasses doesn't
even require recompilation to work with Python 2.1.

--Guido van Rossum (home page: http://www.python.org/~guido/)




RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4