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

NOTE: This change is smaller compared to 3.2 as much of this cleanup had
already been done.  I added the comment that my change in 3.2 added so that the
code would match up.  Otherwise this just adds or synchronizes appropriate UL
designations on some constants to be pedantic.

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:32:53 -08:00
..
stringlib Issue #8271: Fix compilation on Windows 2012-11-04 23:59:15 +01:00
abstract.c Issue #16060: Fix a double DECREF in int() implementation. Thanks Serhiy Storchaka. 2012-09-27 19:38:59 +01:00
accu.c
boolobject.c
bytearrayobject.c Fix compilation on Windows 2012-11-03 23:08:18 +01:00
bytes_methods.c
bytesobject.c Fix the internals of our hash functions to used unsigned values during hash 2012-12-10 18:15:46 -08:00
capsule.c
cellobject.c
classobject.c Py_TYPE() has already dereferenced self before the NULL check. Moved Py_TYPE() after the check for self == NULL 2012-09-10 02:45:56 +02:00
codeobject.c Issue #15456: Fix code __sizeof__ after #12399 change. 2012-07-26 22:23:23 +02:00
complexobject.c
descrobject.c
dictnotes.txt
dictobject.c merge 3.2 2012-10-31 14:22:25 -04:00
enumobject.c
exceptions.c Issue #15784: Modify OSError.__str__() to better distinguish between 2012-08-28 19:33:26 +01:00
fileobject.c
floatobject.c
frameobject.c
funcobject.c
genobject.c
iterobject.c
listobject.c
listsort.txt
lnotab_notes.txt
longobject.c Issue #16277: merge fix from 3.2 2012-10-18 19:53:28 +01:00
memoryobject.c Issue #15814: Use hash function that is compatible with the equality 2012-11-02 17:49:22 +01:00
methodobject.c
moduleobject.c
namespaceobject.c Close #16160: Subclass support now works for types.SimpleNamespace. Thanks to RDM for noticing. 2012-10-16 22:35:38 -07:00
object.c merge 3.2 (#16369) 2012-10-30 23:27:52 -04:00
obmalloc.c Issue #15144: Fix possible integer overflow when handling pointers as integer values, by using Py_uintptr_t instead of size_t. 2012-09-20 20:56:47 +02:00
rangeobject.c Issue #16402: Merge fix from 3.2 2012-11-04 11:47:05 +00:00
setobject.c Fix the internals of our hash functions to used unsigned values during hash 2012-12-10 18:32:53 -08:00
sliceobject.c Issue #14783: Merge changes from 3.2. 2012-10-07 14:56:27 -07:00
structseq.c Check for NULL return value in PyStructSequence_NewType(). Found by Coverity. 2012-08-19 11:20:41 +02:00
tupleobject.c Fix the internals of our hash functions to used unsigned values during hash 2012-12-10 18:32:53 -08:00
typeobject.c do safety checks on __qualname__ assignment 2012-10-31 00:01:15 -04:00
typeslots.inc
typeslots.py
unicodectype.c
unicodeobject.c Fix the internals of our hash functions to used unsigned values during hash 2012-12-10 18:32:53 -08:00
unicodetype_db.h
weakrefobject.c 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:17:03 +01:00