]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
libgomp: Don't include limits.h instead of hidden visibility block
authorJakub Jelinek <jakub@redhat.com>
Tue, 13 Jul 2021 07:50:49 +0000 (09:50 +0200)
committerJakub Jelinek <jakub@redhat.com>
Tue, 13 Jul 2021 07:50:49 +0000 (09:50 +0200)
sem.h is included in between # pragma GCC visibility push(hidden)
and # pragma GCC visibility pop and includes limits.h there, which
since the introduction of sysconf declaration in recent glibcs
in there causes trouble.  libgomp assumes it is compiled by gcc,
so we don't really need to include limits.h there and can use
-__INT_MAX__ - 1 instead (which clang and icc support too for years).

2021-07-13  Jakub Jelinek  <jakub@redhat.com>
    Florian Weimer  <fweimer@redhat.com>

* config/linux/sem.h: Don't include limits.h.
(SEM_WAIT): Define to -__INT_MAX__ - 1 instead of INT_MIN.
* config/linux/affinity.c: Include limits.h.

libgomp/config/linux/affinity.c
libgomp/config/linux/sem.h

index c5abdce2387bedf90516a253ffaac21dce39f33d..1b636c613704079a894d28156de03a005e8cf561 100644 (file)
@@ -35,6 +35,7 @@
 #include <stdio.h>
 #include <string.h>
 #include <unistd.h>
+#include <limits.h>
 
 #ifdef HAVE_PTHREAD_AFFINITY_NP
 
index bc0627d5e77d4378384638b65e62e3e2e79f9346..a3b0e267238c9ecba7afe0c6821790f6bbff0217 100644 (file)
 #ifndef GOMP_SEM_H
 #define GOMP_SEM_H 1
 
-#include <limits.h> /* For INT_MIN */
-
 typedef int gomp_sem_t;
-#define SEM_WAIT INT_MIN
+#define SEM_WAIT (-__INT_MAX__ - 1)
 #define SEM_INC 1
 
 extern void gomp_sem_wait_slow (gomp_sem_t *, int);