From: Keith Marshall Date: Fri, 17 Jan 2020 16:58:38 +0000 (+0000) Subject: Update handling of test-suite limitation. X-Git-Tag: wsl-5.3-release~13 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=9e7808202ab1f073d535960017f60e85f358f24d;p=mingw%2Fmingw-org-wsl.git Update handling of test-suite limitation. --- diff --git a/mingwrt/ChangeLog b/mingwrt/ChangeLog index 6e260e5..97c7d4e 100644 --- a/mingwrt/ChangeLog +++ b/mingwrt/ChangeLog @@ -1,5 +1,16 @@ 2020-01-17 Keith Marshall + Update handling of test-suite limitation. + + * include/process.h (-Wbuiltin-declaration-mismatch) + [__IN_MINGWRT_TESTSUITE__ && __GNUC__ >= 7 && __cplusplus]: Drop... + [__cplusplus]: ...this diagnostic constraint, in test case when... + [__GNUC__ >= 9]: ...this applies; this diagnostic now affects both + C and C++ compilers, with respect to each of... + (execv, execve, execvp): ...these functions. + +2020-01-17 Keith Marshall + Support GCC-9.x gratuitous use of non-standard errno accessor API. * include/stdlib.h (_get_errno, _set_errno): Declare prototypes; diff --git a/mingwrt/include/process.h b/mingwrt/include/process.h index ec37ae0..a5fa62f 100644 --- a/mingwrt/include/process.h +++ b/mingwrt/include/process.h @@ -189,13 +189,18 @@ intptr_t execlp (const char *, const char *, ...); _CRTIMP __cdecl __MINGW_NOTHROW intptr_t execlpe (const char *, const char *,...); -#if defined __cplusplus && __IN_MINGWRT_TESTSUITE__ && __GNUC__ >= 7 -/* From GCC-7 onwards, with "-Wsystem-headers" enabled, the C++ compiler - * may emit unwanted "-Wbuiltin-declaration-mismatch" diagnostics related - * to the following "execv" function declarations; these will precipitate +#if __IN_MINGWRT_TESTSUITE__ && __GNUC__ >= 7 +/* From GCC-7 onwards, with "-Wsystem-headers" enabled, the compiler may + * emit unwanted "-Wbuiltin-declaration-mismatch" diagnostics related to + * the following "execv" function declarations; these will precipitate * testsuite failures, so suppress them. */ -# pragma GCC diagnostic ignored "-Wbuiltin-declaration-mismatch" +# if __GNUC__ >= 9 || defined __cplusplus + /* Prior to GCC-9, this limitation was apparent in the C++ compiler + * only; it became apparent in the C compiler, from GCC-9. + */ +# pragma GCC diagnostic ignored "-Wbuiltin-declaration-mismatch" +# endif #endif _CRTIMP __cdecl __MINGW_NOTHROW