[Python-Dev] struct module docs vs reality (original) (raw)

Gregory P. Smith greg at krypto.org
Wed Jan 23 21:37:37 CET 2008


The documentation for the struct module says:

http://docs.python.org/dev/library/struct.html#module-struct

"short is 2 bytes; int and long are 4 bytes; long long (__int64 on Windows) is 8 bytes"

and lists 'l' and 'L' as the pack code for a C long.

As its implemented today, the documentation is incorrect. On an LP64 host (pretty much any 64-bit linux, bsd or unixish thing) a long is 8 bytes.

I assume this means there is existing code out there that expects the current not-as-documented behavior. There is also code out there that expects the documented behavior but behaves wrong when a 64bit Python is used.

I assume I should just fix the documentation and anything in Lib that uses the struct module incorrectly (zipfile for example) rather than change the behavior?

This is for http://bugs.python.org/issue1789 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-dev/attachments/20080123/e7f95a36/attachment.htm



More information about the Python-Dev mailing list