libgomp: Don't include limits.h instead of hidden visibility block

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.
This commit is contained in:
Jakub Jelinek 2021-07-13 09:50:49 +02:00
parent 18a463bb66
commit 42f10ba5b5
2 changed files with 2 additions and 3 deletions

View File

@ -35,6 +35,7 @@
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <limits.h>
#ifdef HAVE_PTHREAD_AFFINITY_NP

View File

@ -33,10 +33,8 @@
#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);