tree 1a3c4c0603a5e3fac9b8d2ec1a96a9445291d392
parent a30f6d45ac3e72761b96a8df0527182029eaee24
author Pauli Virtanen <pav@iki.fi> 1503922129 +0200
committer Antoine Pitrou <pitrou@free.fr> 1503922129 +0200

bpo-10746: Fix ctypes PEP 3118 type codes for c_long, c_bool, c_int (#31)

Ctypes currently produces wrong pep3118 type codes for several types.
E.g. memoryview(ctypes.c_long()).format gives "<l" on 64-bit platforms,
but it should be "<q" instead for sizeof(c_long) == 8

The problem is that the '<>' endian specification in the struct syntax
also turns on the "standard size" mode, which makes type characters have
a platform-independent meaning, which does not match with the codes used
internally in ctypes.  The struct module format syntax also does not
allow specifying native-size non-native-endian items.

This commit adds a converter function that maps the internal ctypes
codes to appropriate struct module standard-size codes in the pep3118
format strings. The tests are modified to check for this.