[Python-Dev] Word size inconsistencies in C extension modules

Luke Mewburn lukem at NetBSD.org
Mon Sep 10 09:11:59 CEST 2007


On Mon, Sep 10, 2007 at 07:37:02AM +0200, "Martin v. L?wis" wrote:
  | In principle, it is possible to deal with these in ParseTuple.
  | To do so:
  | a) in configure.in, make a configure-time check to compute the
  |    size of the type, and possibly its signedness.
  | b) in _cursesmodule.c, make a conditional define of ATTR_T_FMT,
  |    which would be either "i" or "l" (or #error if it's neither
  |    the size of int nor the size of long). Then rely on string
  |    concatenation in using that define.

Are there some good examples in the Python source where
this technique has been used already?
Or were you proposing a cleaner solution that could be
experimented with?


  | I have a GCC patch which checks for correctness of ParseTuple
  | calls (in terms of data size) if you are interested.

Sounds like a useful variation of the standard -Wformat stuff.

This probably wouldn't have helped in the AIX situation I experienced
(because the IBM compiler was used in that situation), but it could
be useful on other BE LP64 platforms that are more gcc-friendly
(e.g, NetBSD/sparc64).
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 186 bytes
Desc: not available
Url : http://mail.python.org/pipermail/python-dev/attachments/20070910/8af04ed8/attachment.pgp 


More information about the Python-Dev mailing list