Message270809
I committed the fix for negation in audioop.
slice-step.patch includes a better fix for the remaining part of trapv.patch, with Element Tree slicing. I think this fix is much less intrusive, and I have copied it to other places that handle slicing, and added corresponding test cases.
The undefined behaviour sanitizer produces lots of errors about bit shifting signed integers in low-level modules like ctypes, struct, audioop. Typically this is for code converting signed integers to and from bytes, and big/little-endian conversions. This is technically undefined behaviour, but I think it may be less serious than the other overflows with traditional arithmetic like addition and multiplication. E.g. GCC explicitly documents <https://gcc.gnu.org/onlinedocs/gcc/Integers-implementation.html> that this is handled as expected with twos-complement, so with GCC there should be no nasty surprises with optimizing out undefined behaviour. My set-overflow.patch would also be in this boat. |
|
Date |
User |
Action |
Args |
2016-07-19 03:44:38 | martin.panter | set | recipients:
+ martin.panter, gvanrossum, loewis, nnorwitz, gregory.p.smith, jcea, mark.dickinson, pitrou, vstinner, christian.heimes, alexandre.vassalotti, donmez, matejcik, jwilk, alex, dmalcolm, python-dev, deadshort, serhiy.storchaka, ztane, fweimer, Jeffrey.Walton |
2016-07-19 03:44:38 | martin.panter | set | messageid: <1468899878.62.0.169122086271.issue1621@psf.upfronthosting.co.za> |
2016-07-19 03:44:38 | martin.panter | link | issue1621 messages |
2016-07-19 03:44:36 | martin.panter | create | |
|