cpython/Include
Armin Rigo 93677f075d * drop the unreasonable list invariant that ob_item should never come back
to NULL during the lifetime of the object.

* listobject.c nevertheless did not conform to the other invariants,
  either; fixed.

* listobject.c now uses list_clear() as the obvious internal way to clear
  a list, instead of abusing list_ass_slice() for that.  It makes it easier
  to enforce the invariant about ob_item == NULL.

* listsort() sets allocated to -1 during sort; any mutation will set it
  to a value >= 0, so it is a safe way to detect mutation.  A negative
  value for allocated does not cause a problem elsewhere currently.
  test_sort.py has a new test for this fix.

* listsort() leak: if items were added to the list during the sort, AND if
  these items had a __del__ that puts still more stuff into the list,
  then this more stuff (and the PyObject** array to hold them) were
  overridden at the end of listsort() and never released.
2004-07-29 12:40:23 +00:00
..
Python.h Use intptr_t/uintptr_t on Windows 2004-07-27 15:57:24 +00:00
abstract.h Make PySequence_Fast_ITEMS public. (Thanks Skip.) 2004-03-12 16:38:17 +00:00
bitset.h REMOVED all CWI, CNRI and BeOpen copyright markings. 2000-09-01 23:29:29 +00:00
boolobject.h SF bug 994255: Py_RETURN_NONE causes too much warnings 2004-07-22 01:46:43 +00:00
bufferobject.h Excise DL_EXPORT from Include. 2002-08-12 07:21:58 +00:00
cStringIO.h SF bug #670229: doc improvement for cStringIO.h 2003-01-19 00:45:01 +00:00
cellobject.h Excise DL_EXPORT from Include. 2002-08-12 07:21:58 +00:00
ceval.h Patch #966493: Cleanup generator/eval_frame exposure. 2004-06-27 15:43:12 +00:00
classobject.h Typo repair. 2003-04-08 18:47:21 +00:00
cobject.h Make CObjects mutable. Fixes #477441. 2003-10-19 18:30:01 +00:00
codecs.h PEP 293 implemention (from SF patch http://www.python.org/sf/432401) 2002-09-02 13:14:32 +00:00
compile.h This is my patch #876198 plus a NEWS entry and a header frob. 2004-02-12 15:28:27 +00:00
complexobject.h SF # 607253, header file problems by Ralf W. Grosse-Kunstleve 2002-10-04 12:43:02 +00:00
datetime.h Add missing backslash for PyDateTimeAPI->Delta_FromDelta() macro. 2004-06-28 00:48:30 +00:00
descrobject.h SF 548651: Fix the METH_CLASS implementation. 2002-12-09 22:56:13 +00:00
dictobject.h Fix name problem in previous checkin: Dict not List 2003-12-26 17:17:49 +00:00
enumobject.h Implement and apply PEP 322, reverse iteration 2003-11-06 14:06:48 +00:00
errcode.h provide less mysterious error messages when seeing end-of-line in 2002-08-15 01:20:16 +00:00
eval.h - New function sys.call_tracing() allows pdb to debug code 2003-04-09 19:06:21 +00:00
fileobject.h Add weakref support to array.array and file objects. 2004-05-31 00:35:52 +00:00
floatobject.h New private API functions _PyFloat_{Pack,Unpack}(4,8}. This is a 2003-03-20 20:53:32 +00:00
frameobject.h SF Bug #215126: Over restricted type checking on eval() function 2004-07-02 06:41:07 +00:00
funcobject.h Provide __module__ attributes for functions defined in C and Python. 2003-01-31 18:33:18 +00:00
genobject.h Patch #966493: Cleanup generator/eval_frame exposure. 2004-06-27 15:43:12 +00:00
graminit.h SF patch #872326: Generator expression implementation 2004-05-19 08:20:33 +00:00
grammar.h REMOVED all CWI, CNRI and BeOpen copyright markings. 2000-09-01 23:29:29 +00:00
import.h Excise DL_IMPORT/EXPORT from object.h, and related files. This patch 2002-07-29 13:42:14 +00:00
intobject.h SF # 595026: support for masks in getargs.c. 2003-04-17 18:55:45 +00:00
intrcheck.h Excise DL_EXPORT from Include. 2002-08-12 07:21:58 +00:00
iterobject.h Excise DL_EXPORT from Include. 2002-08-12 07:21:58 +00:00
listobject.h * drop the unreasonable list invariant that ob_item should never come back 2004-07-29 12:40:23 +00:00
longintrepr.h Excise DL_EXPORT from Include. 2002-08-12 07:21:58 +00:00
longobject.h SF # 595026: support for masks in getargs.c. 2003-04-17 18:55:45 +00:00
marshal.h Patch #923098: Share interned strings in marshal. 2004-06-27 16:51:46 +00:00
metagrammar.h REMOVED all CWI, CNRI and BeOpen copyright markings. 2000-09-01 23:29:29 +00:00
methodobject.h * Added a new method flag, METH_COEXIST. 2003-12-13 11:26:12 +00:00
modsupport.h Add PyArg_VaParseTupleAndKeywords(). Document this function and 2004-07-10 22:20:32 +00:00
moduleobject.h Excise DL_EXPORT from Include. 2002-08-12 07:21:58 +00:00
node.h Back out the previous change. It doesn't save any space on 64-bit 2002-09-17 03:27:02 +00:00
object.h SF bug 994255: Py_RETURN_NONE causes too much warnings 2004-07-22 01:46:43 +00:00
objimpl.h Formalize that the Py_VISIT macro requires that the tp_traverse 2004-07-15 04:05:59 +00:00
opcode.h Install two code generation optimizations that depend on NOP. 2004-06-21 16:31:15 +00:00
osdefs.h Getting rid of all the code inside #ifdef macintosh too. 2003-11-20 01:44:59 +00:00
parsetok.h Changes from Jonathan Riehl to allow his pgen extension (PEP 269) to 2003-04-17 14:55:42 +00:00
patchlevel.h post-release fun 2004-07-09 07:19:21 +00:00
pgen.h Changes from Jonathan Riehl to allow his pgen extension (PEP 269) to 2003-04-17 14:55:42 +00:00
pgenheaders.h Use Py_GCC_ATTRIBUTE instead of __attribute__. Compilers other than GCC 2002-09-15 14:09:54 +00:00
py_curses.h FreeBSD 5.x uses different wchar_t/win_t guards than earlier versions 2003-06-29 15:46:21 +00:00
pydebug.h Update comment, QnewFlag will go away in 3.0, not 2.3 2003-01-13 16:08:56 +00:00
pyerrors.h Use appropriate macros not the deprecated DL_IMPORT/DL_EXPORT macros 2003-07-01 20:15:21 +00:00
pyfpe.h Some patches to Lee Busby's fpectl mods that accidentally didn't make it 1997-10-20 23:50:01 +00:00
pygetopt.h Excise DL_EXPORT from Include. 2002-08-12 07:21:58 +00:00
pymactoolbox.h Moved PyMac_GetScript() to _localemodule, which is the only place where 2004-07-15 13:31:39 +00:00
pymem.h Remove MALLOC_ZERO_RETURNS_NULL. 2002-11-23 09:13:40 +00:00
pyport.h Moved SunPro warning suppression into pyport.h and out of individual 2004-07-15 15:54:05 +00:00
pystate.h Patch #510695: Add TSC profiling for the VM. 2004-06-08 08:17:44 +00:00
pystrtod.h Patch #774665: Make Python LC_NUMERIC agnostic. 2004-06-08 18:52:54 +00:00
pythonrun.h - Finally fixed the bug in compile() and exec where a string ending 2003-02-13 22:07:59 +00:00
pythread.h New PyGILState_ API - implements pep 311, from patch 684256. 2003-04-19 15:41:53 +00:00
rangeobject.h Excise DL_EXPORT from Include. 2002-08-12 07:21:58 +00:00
setobject.h Make sets and deques weak referencable. 2004-05-30 07:26:47 +00:00
sliceobject.h Excise DL_EXPORT from Include. 2002-08-12 07:21:58 +00:00
stringobject.h Use appropriate macros not the deprecated DL_IMPORT/DL_EXPORT macros 2003-07-01 20:15:21 +00:00
structmember.h remove support for missing ANSI C header files (limits.h, stddef.h, etc). 2004-02-10 16:50:21 +00:00
structseq.h Clean up some whitespace to be consistent with Python's C style. 2002-10-17 19:48:27 +00:00
symtable.h SF patch #872326: Generator expression implementation 2004-05-19 08:20:33 +00:00
sysmodule.h Use Py_GCC_ATTRIBUTE instead of __attribute__. Compilers other than GCC 2002-09-15 14:09:54 +00:00
timefuncs.h Bug 975996: Add _PyTime_DoubleToTimet to C API 2004-06-20 02:50:16 +00:00
token.h Excise DL_EXPORT from Include. 2002-08-12 07:21:58 +00:00
traceback.h Moved tracebackobject to traceback.h, Closes SF Bug #497067 2004-03-21 18:37:23 +00:00
tupleobject.h Extended tuple's C API to include a new function, PyTuple_Pack() that is 2003-10-12 18:24:34 +00:00
ucnhash.h refactored the unicodeobject/ucnhash interface, to hide the 2001-01-19 09:45:02 +00:00
unicodeobject.h Allow string and unicode return types from .encode()/.decode() 2004-07-08 17:57:32 +00:00
weakrefobject.h Make weak references subclassable: 2004-07-02 18:57:45 +00:00