On 29Jan2021 1715, Victor Stinner wrote:
It seems like declaring a TLS in libpython and using it from an extension module (another dynamic library) is causing issues depending on the linker. It "should" work on macOS, but it doesn't.
I'm pretty sure this is not defined in any calling convention that would be able to cross dynamic library boundaries, or at least I've never seen it shown how this information would be enecoded. In general, provided the features don't leak out of our compilation process (i.e. cross dynamic library boundaries or show up in public/implicit header files), I don't have any issue allowing them to be used. Though I don't want to speak for the people who maintain CPython distros on smaller/slower/more focused platforms. I'm not sure how best to reach them, but I'd rather do that than find out when they complain on the issue tracker. Only thing I'm certain of is that we shouldn't assume that we know everyone who ever builds CPython. Cheers, Steve