Mark Dickinson <dicki...@gmail.com> added the comment:

> don't apply any of the resulting changes to the maintenance releases,
> and target the issue only for 3.3.

That sounds fine to me, though if we find more instances of signed overflow 
that actually trigger test failures in the maintenance branches (like the 
int_pow one) on mainstream compilers, we might want to fix those there too, on 
a case-by-case basis.

To get started, here's a patch that fixes occurrences of signed overflow in the 
bytes, str and tuple hash methods, and also in set lookups.  It also fixes a 
related and minor casting inconsistency in dictobject.c  (which was using 
(size_t)hash & mask in some places, and just 'hash & mask' in others).  These 
are the minimal changes required to get Python to build completely using Clang 
with '-ftrapv' turned on and --with-pydebug enabled.

----------
versions:  -Python 2.7, Python 3.2
Added file: http://bugs.python.org/file23237/issue1621_hashes_and_sets.patch

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue1621>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to