cpython/Include
Gregory P. Smith 27cbcd6241 Fix the internals of our hash functions to used unsigned values during hash
computation as the overflow behavior of signed integers is undefined.

In practice we require compiling everything with -fwrapv which forces overflow
to be defined as twos compliment but this keeps the code cleaner for checkers
or in the case where someone has compiled it without -fwrapv or their
compiler's equivalent.

Found by Clang trunk's Undefined Behavior Sanitizer (UBSan).

Cleanup only - no functionality or hash values change.
2012-12-10 18:15:46 -08:00
..
Python-ast.h Merged revisions 62047 via svnmerge from 2008-03-31 05:14:30 +00:00
Python.h Issue #14387: Do not include accu.h from Python.h. 2012-03-22 14:38:16 +01:00
abstract.h #11565: Merge with 3.1. 2011-03-16 11:35:38 +02:00
accu.h Issue #14387 : undefine 'small' so that it doesn't clash with Windows headers. 2012-03-22 23:10:37 +00:00
asdl.h Whoops, fix build breakage. There were still a few uses of the bool type. 2007-02-26 19:14:12 +00:00
ast.h Issue #9738: Document encodings of AST, compiler, parser and PyRun functions 2010-12-27 01:49:31 +00:00
bitset.h REMOVED all CWI, CNRI and BeOpen copyright markings. 2000-09-01 23:29:29 +00:00
bltinmodule.h these builtins have to be initialized 2009-05-09 18:10:51 +00:00
boolobject.h #1629: Renamed Py_Size, Py_Type and Py_Refcnt to Py_SIZE, Py_TYPE and Py_REFCNT. 2007-12-19 02:45:37 +00:00
bytearrayobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
bytes_methods.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
bytesobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
cellobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
ceval.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
classobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
code.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
codecs.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
compile.h Issue #9738: Ooops, fix typos in my previous commit (r87506) 2010-12-27 02:39:20 +00:00
complexobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
datetime.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
descrobject.h make sure to initialize the method wrapper type 2011-09-01 16:32:31 -04:00
dictobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
dtoa.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
dynamic_annotations.h Closes issue #13488: Some old preprocessors have problem with #define not in the first column 2011-11-27 05:16:22 +01:00
enumobject.h Implement and apply PEP 322, reverse iteration 2003-11-06 14:06:48 +00:00
errcode.h Implement PEP 3131. Add isidentifier to str. 2007-08-15 07:32:56 +00:00
eval.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
fileobject.h Issue #12287: Fix a stack corruption in ossaudiodev module when the FD is 2011-08-28 17:51:43 +02:00
fileutils.h PyUnicode_EncodeFS() raises an exception if _Py_wchar2char() fails 2010-11-08 22:43:46 +00:00
floatobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
frameobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
funcobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
genobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
graminit.h fix an ambiguity in the grammar from the implementation of extended unpacking 2009-09-27 02:43:28 +00:00
grammar.h REMOVED all CWI, CNRI and BeOpen copyright markings. 2000-09-01 23:29:29 +00:00
import.h Merged revisions 88517 via svnmerge from 2011-02-22 23:43:57 +00:00
intrcheck.h Excise DL_EXPORT from Include. 2002-08-12 07:21:58 +00:00
iterobject.h Move itertools izip() code to builtins as zip(). Complete the renaming. 2008-03-13 02:09:15 +00:00
listobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
longintrepr.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
longobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
marshal.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
memoryobject.h Remove buffer API from stable ABI for now, see #10181. 2011-01-06 19:15:47 +00:00
metagrammar.h REMOVED all CWI, CNRI and BeOpen copyright markings. 2000-09-01 23:29:29 +00:00
methodobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
modsupport.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
moduleobject.h Merged revisions 88517 via svnmerge from 2011-02-22 23:43:57 +00:00
node.h Closes #15512: Correct __sizeof__ support for parser 2012-08-03 14:28:37 +02:00
object.h Issue #13992: The trashcan mechanism is now thread-safe. This eliminates 2012-09-06 00:59:49 +02:00
objimpl.h Issue #10333: Remove ancient GC API, which has been deprecated since 2011-01-04 00:00:31 +00:00
opcode.h #4617: Previously it was illegal to delete a name from the local 2010-09-10 21:39:53 +00:00
osdefs.h Change command line processing API to use wchar_t. 2008-04-05 20:41:37 +00:00
parsetok.h Issue #9738: Document encodings of AST, compiler, parser and PyRun functions 2010-12-27 01:49:31 +00:00
patchlevel.h Merge 3.2.3 release clone. 2012-04-11 12:46:24 +02: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 Merged revisions 74696 via svnmerge from 2009-09-06 21:26:46 +00:00
pyarena.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
pyatomic.h - Issue #11147: Fix an unused argument in _Py_ANNOTATE_MEMORY_ORDER. (Fix 2011-12-05 16:45:02 -05:00
pycapsule.h Merged revisions 88517 via svnmerge from 2011-02-22 23:43:57 +00:00
pyctype.h Try to fix linking failures under Windows 2011-10-04 14:43:47 +02:00
pydebug.h Merge from 3.1: Issue #13703: add a way to randomize the hash values of basic types (str, bytes, datetime) 2012-02-20 21:31:46 +01:00
pyerrors.h Issue #10780: Remove commas at the end of the argument list 2010-12-28 00:59:03 +00:00
pyexpat.h add a replacement API for PyCObject, PyCapsule #5630 2009-05-05 22:31:58 +00:00
pyfpe.h Remove trailing whitespace in order to silence warnings on HP-UX. 2012-08-31 17:11:39 -04:00
pygetopt.h Fix test failure in test_cmd_line by initializing the hash secret at the earliest point. 2012-02-21 19:03:47 +01:00
pymacconfig.h #11565: Merge with 3.1. 2011-03-16 11:35:38 +02:00
pymath.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
pymem.h Merged revisions 78192 via svnmerge from 2010-02-14 14:09:25 +00:00
pyport.h Fix the internals of our hash functions to used unsigned values during hash 2012-12-10 18:15:46 -08:00
pystate.h Issue #13992: The trashcan mechanism is now thread-safe. This eliminates 2012-09-06 00:59:49 +02:00
pystrcmp.h Merged revisions 59541-59561 via svnmerge from 2007-12-19 02:07:34 +00:00
pystrtod.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
pythonrun.h Fix test failure in test_cmd_line by initializing the hash secret at the earliest point. 2012-02-21 19:03:47 +01:00
pythread.h Issue #8844: Regular and recursive lock acquisitions can now be interrupted 2010-12-15 22:59:16 +00:00
pytime.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
rangeobject.h #1629: Renamed Py_Size, Py_Type and Py_Refcnt to Py_SIZE, Py_TYPE and Py_REFCNT. 2007-12-19 02:45:37 +00:00
setobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
sliceobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
structmember.h Merged revisions 60176-60209 via svnmerge from 2008-01-23 08:24:23 +00:00
structseq.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
symtable.h Issue #9738: Document encodings of AST, compiler, parser and PyRun functions 2010-12-27 01:49:31 +00:00
sysmodule.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
timefuncs.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
token.h Issue #13629: Renumber the tokens in token.h to match the _PyParser_TokenNames indexes. 2012-01-15 19:15:36 -06:00
traceback.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
tupleobject.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
typeslots.h Issue #11134: Add missing fields to typeslots.h. 2011-02-11 20:50:24 +00:00
ucnhash.h Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
unicodeobject.h Issue #13848: open() and the FileIO constructor now check for NUL characters in the file name. 2012-01-29 18:36:34 +01:00
warnings.h Issue #10779: PyErr_WarnExplicit() decodes the filename from the filesystem 2010-12-27 20:10:36 +00:00
weakrefobject.h Issue #16602: When a weakref's target was part of a long deallocation chain, the object could remain reachable through its weakref even though its refcount had dropped to zero. 2012-12-08 21:15:26 +01:00