From efc536ee9d2347700cb0ff76f2c16d121a7adbb4 Mon Sep 17 00:00:00 2001 From: Michal Gorny Date: Tue, 18 Oct 2016 16:38:44 +0000 Subject: [PATCH] Fix a compile error on musl-libc due to strerror_r() prototype Function strerror_r() has different signatures in different implementations of libc: glibc's version returns a char*, while BSDs and musl return a int. libomp unconditionally assumes glibc on Linux and thus fails to compile against musl-libc. This patch addresses this issue. Differential Revision: https://reviews.llvm.org/D25071 llvm-svn: 284492 --- openmp/runtime/src/kmp_i18n.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openmp/runtime/src/kmp_i18n.c b/openmp/runtime/src/kmp_i18n.c index 546e69349d1f..e008d1f14466 100644 --- a/openmp/runtime/src/kmp_i18n.c +++ b/openmp/runtime/src/kmp_i18n.c @@ -809,7 +809,7 @@ sys_error( int strerror_r( int, char *, size_t ); // XSI version */ - #if KMP_OS_LINUX + #if defined(__GLIBC__) && defined(_GNU_SOURCE) // GNU version of strerror_r.