New submission from Thomas Caswell <tcasw...@gmail.com>:

The module attribute signal.SIGCLD 
(https://docs.python.org/3/library/signal.html#signal.SIGCLD) is an "archaic" 
(quoting from the GNU C Library source) alias for signal.SIGCHLD 
(https://docs.python.org/3/library/signal.html#signal.SIGCHLD). signal.SIGCHLD 
is documented as being available on unix, and signal.SIGCLD is documented as an 
alias of signal.SIGCHLD.  

However, it seems that clang does not define the SIGCLD back-compatibility name 
[1] so the SIGCLD alias is missing on OSX (all the way to at least 2.7) because 
the clang headers appear to not define the SIGCLD macro and hence the logic in 
modulesignal.c does not find it, and hence the rest of the tooling in signal.py 
does not find it.

I am not sure if the correct fix is to document that SIGCLD in only available 
on linux (which I am not sure is completely correct, maybe "availability is 
platform dependent, but definitely not on darwin"?) or to add the macro if 
SIGCHLD is defined and SIGCLD is missing (see attached patch)

[1] SIGCLD is not documented in 
https://developer.apple.com/library/archive/documentation/System/Conceptual/ManPages_iPhoneOS/man3/signal.3.html
 and not the signal.h that ships with xcode

----------
assignee: docs@python
components: Documentation, Library (Lib)
files: osx_signal_compat.patch
keywords: patch
messages: 402280
nosy: docs@python, tcaswell
priority: normal
severity: normal
status: open
title: signal.SIGCLD alias is not available on OSX
versions: Python 3.10, Python 3.11, Python 3.6, Python 3.7, Python 3.8, Python 
3.9
Added file: https://bugs.python.org/file50290/osx_signal_compat.patch

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue45251>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to