diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2018-11-21 11:45:04 +0800 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2018-12-14 13:48:03 +0800 |
commit | 284b9192ed12a80b35fa7b9b85d75055887b64e9 (patch) | |
tree | e1dc990ea0f2af07a764bcba4d9e9d332c5dc224 /src | |
parent | eval: Use sh_warnx instead of warnx (diff) | |
download | dash-284b9192ed12a80b35fa7b9b85d75055887b64e9.tar.gz dash-284b9192ed12a80b35fa7b9b85d75055887b64e9.zip |
system: Disable glibc warning on sigsetmask
As sigsetmask is set as deprecated in glibc this patch adds the pragmas to disable the warning in gcc around our one and only use of sigsetmask. It also disables it completely for non-gcc compilers and older gcc compilers as they may generate a warning too. Reported-by: Antonio Ospite <ao2@ao2.it> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'src')
-rw-r--r-- | src/system.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/system.h b/src/system.h index a8d09b3..007952c 100644 --- a/src/system.h +++ b/src/system.h @@ -36,8 +36,17 @@ static inline void sigclearmask(void) { -#ifdef HAVE_SIGSETMASK +#if defined(HAVE_SIGSETMASK) && \ + (!defined(__GLIBC__) || \ + (defined(__GNUC__) && (__GNUC__ * 1000 + __GNUC_MINOR__) >= 4006)) +#ifdef __GLIBC__ +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" +#endif sigsetmask(0); +#ifdef __GLIBC__ +#pragma GCC diagnostic pop +#endif #else sigset_t set; sigemptyset(&set); |