Fix declaration of pthread_rwlock_* functions

Ken Brown kbrown@cornell.edu
Wed May 30 20:28:00 GMT 2018


The attached patch fixes the second problem reported in 
https://cygwin.com/ml/cygwin/2018-05/msg00316.html, though I'm not sure 
it's the right fix.

Ken
-------------- next part --------------
From 4940baac08cd9339d771d9db90a880c61610ae4c Mon Sep 17 00:00:00 2001
From: Ken Brown <kbrown@cornell.edu>
Date: Wed, 30 May 2018 16:19:01 -0400
Subject: [PATCH] Declare the pthread_rwlock_* functions if __cplusplus >=
 201402L

Some of these functions are used in the <shared_mutex> C++ header.
---
 winsup/cygwin/include/pthread.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/winsup/cygwin/include/pthread.h b/winsup/cygwin/include/pthread.h
index 3dfc2bc80..fed616532 100644
--- a/winsup/cygwin/include/pthread.h
+++ b/winsup/cygwin/include/pthread.h
@@ -187,7 +187,7 @@ int pthread_spin_unlock (pthread_spinlock_t *);
 #endif
 
 /* RW Locks */
-#if __XSI_VISIBLE >= 500 || __POSIX_VISIBLE >= 200112
+#if __XSI_VISIBLE >= 500 || __POSIX_VISIBLE >= 200112 || __cplusplus >= 201402L
 int pthread_rwlock_destroy (pthread_rwlock_t *rwlock);
 int pthread_rwlock_init (pthread_rwlock_t *rwlock, const pthread_rwlockattr_t *attr);
 int pthread_rwlock_rdlock (pthread_rwlock_t *rwlock);
-- 
2.17.0



More information about the Cygwin-patches mailing list