This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author serhiy.storchaka
Recipients alexandre.vassalotti, pitrou, serhiy.storchaka, vstinner
Date 2015-09-29.13:14:31
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1792414.VdrpBogoOr@raxxla>
In-reply-to <1443511518.66.0.757000511678.issue25262@psf.upfronthosting.co.za>
Content
> To access an array item, the type of the index variable must be size_t (or a
> type with the same size), otherwise the compiler produce less efficient
> machine code: http://www.viva64.com/en/a/0050/
> 
> => please keep Py_ssize_t type for i

i is small integer between 0 and 8. I don't think that this article is 
related. Py_ssize_t is signed, and i is compared with int in a loop. And isn't 
Viva64 work only with Visual C++?  At least I found statements that can be not 
correct on platforms not supported by Microsoft.

> Please add a comment here to explain that the first loop check for integer
> overflow, it's not obvious at the first read.

Done.

> Does the Python implementation of pickle produce BINBYTES8? If not: why not?

Yes, it produces BINBYTES8 on 64-bit platform.

> Note: the patch is probably based on a private Mercurial revision, so it
> didn't get the [Review] button.

Yes, I had made some refactoring for unpickling tests and forgot to push they. 
Here is rebased patch.
Files
File name Uploaded
pickle_binbytes8_2.patch serhiy.storchaka, 2015-09-29.13:14:31
History
Date User Action Args
2015-09-29 13:14:31serhiy.storchakasetrecipients: + serhiy.storchaka, pitrou, vstinner, alexandre.vassalotti
2015-09-29 13:14:31serhiy.storchakalinkissue25262 messages
2015-09-29 13:14:31serhiy.storchakacreate