Skip to content

Commit

Permalink
gh-108765: Include explicitly <unistd.h> in signalmodule.c (#111402)
Browse files Browse the repository at this point in the history
unistd.h is needed by alarm() and pause() functions.
  • Loading branch information
vstinner authored Oct 27, 2023
1 parent 8a158a7 commit 77bb0d5
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 1 deletion.
3 changes: 2 additions & 1 deletion Doc/whatsnew/3.13.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1120,7 +1120,8 @@ Porting to Python 3.13
* ``Python.h`` no longer includes the ``<unistd.h>`` standard header file. If
needed, it should now be included explicitly. For example, it provides the
functions: ``read()``, ``write()``, ``close()``, ``isatty()``, ``lseek()``,
``getpid()``, ``getcwd()``, ``sysconf()`` and ``getpagesize()``.
``getpid()``, ``getcwd()``, ``sysconf()``, ``getpagesize()``, ``alarm()`` and
``pause()``.
As a consequence, ``_POSIX_SEMAPHORES`` and ``_POSIX_THREADS`` macros are no
longer defined by ``Python.h``. The ``HAVE_UNISTD_H`` and ``HAVE_PTHREAD_H``
macros defined by ``Python.h`` can be used to decide if ``<unistd.h>`` and
Expand Down
3 changes: 3 additions & 0 deletions Modules/signalmodule.c
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,9 @@
# include "socketmodule.h" // SOCKET_T
#endif

#ifdef HAVE_UNISTD_H
# include <unistd.h> // alarm()
#endif
#ifdef MS_WINDOWS
# ifdef HAVE_PROCESS_H
# include <process.h>
Expand Down

0 comments on commit 77bb0d5

Please sign in to comment.