cpython/Objects
Guido van Rossum 517c7d4fd3 PyNumber_CoerceEx: this took a shortcut (not doing anything) when the
left and right type were of the same type and not classic instances.

This shortcut is dangerous for proxy types, because it means that
coerce(Proxy(1), Proxy(2.1)) leaves Proxy(1) unchanged rather than
turning it into Proxy(1.0).

In an ever-so-slight change of semantics, I now only take the shortcut
when the left and right types are of the same type and don't have the
CHECKTYPES feature.  It so happens that classic instances have this
flag, so the shortcut is still skipped in this case (i.e. nothing
changes for classic instances).  Proxies also have this flag set
(otherwise implementing numeric operations on proxies would become
nightmarish) and this means that the shortcut is also skipped there,
as desired.  It so happens that int, long and float also have this
flag set; that means that e.g. coerce(1, 1) will now invoke
int_coerce().  This is fine: int_coerce() can deal with this, and I'm
not worried about the performance; int_coerce() is only invoked when
the user explicitly calls coerce(), which should be rarer than rare.
2002-04-26 02:49:14 +00:00
..
.cvsignore Ignore a bunch of generated files. 2000-05-02 18:34:30 +00:00
abstract.c abstract_get_bases(): Clarify exactly what the return values and 2002-04-23 22:45:44 +00:00
boolobject.c Clean up the layout of the bool_as_number struct initializer. 2002-04-25 20:01:10 +00:00
bufferobject.c Remove the CACHE_HASH and INTERN_STRINGS preprocessor symbols. 2002-03-29 03:29:08 +00:00
cellobject.c Use new GC API. 2001-08-29 23:54:21 +00:00
classobject.c Be smarter about clearing the weakref lists for instances, instance methods, 2001-10-26 17:56:51 +00:00
cobject.c REMOVED all CWI, CNRI and BeOpen copyright markings. 2000-09-01 23:29:29 +00:00
complexobject.c Deprecate % as well. The message for deprecation of //, % and divmod 2002-04-15 12:39:12 +00:00
descrobject.c Fold long lines. (Walter, please take note! :-) 2002-04-13 14:06:36 +00:00
dictobject.c Add Raymond Hettinger's d.pop(). See SF patch 539949. 2002-04-12 15:11:59 +00:00
fileobject.c Py_UniversalNewlineFread(): small speed boost on non-Windows boxes. 2002-04-21 18:15:20 +00:00
floatobject.c SF bug 525705: [2.2] underflow raise OverflowException. 2002-03-09 04:58:24 +00:00
frameobject.c Fix SF bug #505315: Make free and cell vars show up consistently in locals(). 2002-04-20 04:46:55 +00:00
funcobject.c PyObject_Del can now be used as a function designator. 2002-04-12 02:44:10 +00:00
intobject.c Make sure that tp_free frees the int the same way as tp_dealloc would. 2002-04-26 00:53:34 +00:00
iterobject.c Re-enable GC of iter objects. 2002-03-18 20:43:51 +00:00
listobject.c PyObject_GC_Del can now be used as a function designator. 2002-04-12 02:44:22 +00:00
longobject.c Clarify return value of PyLong_AsLongLong(). 2002-04-23 20:01:20 +00:00
methodobject.c Introduce two new flag bits that can be set in a PyMethodDef method 2002-03-28 05:33:33 +00:00
moduleobject.c PyObject_GC_Del can now be used as a function designator. 2002-04-12 02:44:22 +00:00
object.c PyNumber_CoerceEx: this took a shortcut (not doing anything) when the 2002-04-26 02:49:14 +00:00
obmalloc.c _PyObject_DebugMallocStats(): Added some potentially expensive internal 2002-04-18 22:25:03 +00:00
rangeobject.c Remove PyMalloc_New and PyMalloc_Del. 2002-04-12 02:44:55 +00:00
sliceobject.c Remove PyMalloc_New and PyMalloc_Del. 2002-04-12 03:05:37 +00:00
stringobject.c Apply patch diff.txt from SF feature request 2002-04-22 17:42:37 +00:00
structseq.c Remove PyMalloc_New and PyMalloc_Del. 2002-04-12 03:05:37 +00:00
tupleobject.c PyObject_GC_Del can now be used as a function designator. 2002-04-12 03:05:52 +00:00
typeobject.c type_get_doc(): Squash compiler wng about incompatible ptr types. 2002-04-18 04:12:28 +00:00
unicodectype.c removed "register const" from scalar arguments to the unicode 2001-06-27 22:08:26 +00:00
unicodeobject.c unicode_memchr(): Squashed gratuitous int-vs-size_t mismatch (which 2002-04-22 19:00:10 +00:00
unicodetype_db.h forgot to check in the new makeunicodedata.py script 2001-01-21 17:01:31 +00:00
weakrefobject.c Remove weakref free list. This has the side effect of fixing a memory 2002-03-27 15:18:21 +00:00
xxobject.c REMOVED all CWI, CNRI and BeOpen copyright markings. 2000-09-01 23:29:29 +00:00