GH-93207: Remove configure check for stdarg.h (HAVE_STDARG_PROTOTYPES)#93215
GH-93207: Remove configure check for stdarg.h (HAVE_STDARG_PROTOTYPES)#93215vstinner merged 6 commits intopython:mainfrom
Conversation
|
AC changes look good, but I would try to investigate further which compilers/build environments this will affect (if any); buildbots do not cover everything. |
It is unlikely as there is already code which uses variadic args and does not checks for |
|
🤖 New build scheduled with the buildbot fleet by @kumaraditya303 for commit c9a6cc4 🤖 If you want to schedule another build, you need to add the ":hammer: test-with-buildbots" label again. |
|
So far all buildbots passed, I added a news item. cc @vstinner |
|
@erlend-aasland: /workspaces/cpython/Modules/_asynciomodule.c:2646:19: error: macro "va_start" requires 2 arguments, but only 1 given
2646 | va_start(vargs);
| ^Footnotes |
Misc/NEWS.d/next/Build/2022-05-25-13-56-00.gh-issue-93207.B9Rubf.rst
Outdated
Show resolved
Hide resolved
|
Many files already call va_start() with 2 arguments: Objects/call.c, PC/launcher.c and PC/launcher2.c, Parser/pegen_errors.c, etc. (Without testing if the HAVE_STDARG_PROTOTYPES macro is defined.) |
|
Please remove also this line from PC/pyconfig.h: |
Done |
|
Merged, thanks. |
|
This broke cython which appears to have been relying on HAVE_STDARG_PROTOTYPES to be defined by CPython. I am going to open a PR an the cython side to always go with the 2 argument version. |
* MNT: always require va_start to have two arguments python/cpython#93215 chance CPython to always use the 2-input version of va_start and dropped defining HAVE_STDARG_PROTOTYPES. This resulted in the 1-argument version being used when compiling cython source which fails This makes cython also always use the 2-argument version. * Remove blank line * FIX: version gate 2-argument va_start checking to py311
* MNT: always require va_start to have two arguments python/cpython#93215 chance CPython to always use the 2-input version of va_start and dropped defining HAVE_STDARG_PROTOTYPES. This resulted in the 1-argument version being used when compiling cython source which fails This makes cython also always use the 2-argument version. * Remove blank line * FIX: version gate 2-argument va_start checking to py311
Closes #93207