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 EdSchouten
Recipients EdSchouten
Date 2015-11-18.15:50:16
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1447861816.88.0.632584646231.issue25658@psf.upfronthosting.co.za>
In-reply-to
Content
While trying to port Python over to a new platform (CloudABI), I noticed a couple of compiler errors in PyThread_create_key(), PyThread_delete_key(), PyThread_delete_key_value() and PyThread_set_key_value() caused by fact that pthread_key_t is converted to an integer (and vice versa)

POSIX doesn't seem to require that pthread_key_t is an integer or any other arithmetic type:

http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_types.h.html

Old revisions of the standard did require pthread_t to be an arithmetic type, but this requirement was dropped later on.

In my opinion we should strongly consider changing the API, so that we can treat the key created by pthread_key_create() or returned by TlsAlloc() as an opaque type.
History
Date User Action Args
2015-11-18 15:50:16EdSchoutensetrecipients: + EdSchouten
2015-11-18 15:50:16EdSchoutensetmessageid: <1447861816.88.0.632584646231.issue25658@psf.upfronthosting.co.za>
2015-11-18 15:50:16EdSchoutenlinkissue25658 messages
2015-11-18 15:50:16EdSchoutencreate