
report at bugs
Jul 27, 2012, 5:50 AM
Post #1 of 21
(142 views)
Permalink
|
|
[issue15466] Python/importlib.h is different on 32bit and 64bit
|
|
New submission from Amaury Forgeot d'Arc <amauryfa [at] gmail>: As shown in a patch in issue15431, frozen.c does not output the same data on different platforms. The first difference looks like this (extracted from the patch): - 101,73,255,255,255,255,0,0,0,0,40,10,0,0,0,117, + 101,108,3,0,0,0,255,127,255,127,3,0,40,10,0,0, On first row, 'I' followed by 0xFFFFFFFF on 8 bytes. On second row, 'l' followed by 3 followed by 0xFFFFFFFF (in 3 chunks of 15 bits). The Python number 0xFFFFFFFF is marshalled with TYPE_INT64 when SIZEOF_LONG>4 (Unix 64bit), and with TYPE_LONG on other platforms (32bit, or win64) The C "long" type has much less importance in 3.x Python, because PyIntObject does not exist anymore. I suggest to remove this distinction, and allow TYPE_INT64 on all platforms. I don't see any compatibility issue, on unmarshalling both methods produce the same object. I'll try to suggest a patch later today. ---------- messages: 166559 nosy: amaury.forgeotdarc, pitrou priority: high severity: normal status: open title: Python/importlib.h is different on 32bit and 64bit _______________________________________ Python tracker <report [at] bugs> <http://bugs.python.org/issue15466> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/list-python-bugs%40lists.gossamer-threads.com
|