summaryrefslogtreecommitdiffstats
path: root/gl
diff options
context:
space:
mode:
Diffstat (limited to 'gl')
-rw-r--r--gl/pthread.h67
-rw-r--r--gl/sched.h19
-rw-r--r--gl/uchar.h19
3 files changed, 65 insertions, 40 deletions
diff --git a/gl/pthread.h b/gl/pthread.h
index 599f1633..62e1b503 100644
--- a/gl/pthread.h
+++ b/gl/pthread.h
@@ -216,16 +216,6 @@
216#define _GL_FUNCDECL_RPL_1(rpl_func,rettype,parameters,...) \ 216#define _GL_FUNCDECL_RPL_1(rpl_func,rettype,parameters,...) \
217 _GL_EXTERN_C_FUNC __VA_ARGS__ rettype rpl_func parameters 217 _GL_EXTERN_C_FUNC __VA_ARGS__ rettype rpl_func parameters
218 218
219/* _GL_FUNCDECL_SYS_NAME (func) expands to plain func if C++, and to
220 parenthesized func otherwise. Parenthesization is needed in C23 if
221 the function is like strchr and so is a qualifier-generic macro
222 that expands to something more complicated. */
223#ifdef __cplusplus
224# define _GL_FUNCDECL_SYS_NAME(func) func
225#else
226# define _GL_FUNCDECL_SYS_NAME(func) (func)
227#endif
228
229/* _GL_FUNCDECL_SYS (func, rettype, parameters, [attributes]); 219/* _GL_FUNCDECL_SYS (func, rettype, parameters, [attributes]);
230 declares the system function, named func, with the given prototype, 220 declares the system function, named func, with the given prototype,
231 consisting of return type, parameters, and attributes. 221 consisting of return type, parameters, and attributes.
@@ -238,7 +228,7 @@
238 _GL_FUNCDECL_SYS (posix_openpt, int, (int flags), _GL_ATTRIBUTE_NODISCARD); 228 _GL_FUNCDECL_SYS (posix_openpt, int, (int flags), _GL_ATTRIBUTE_NODISCARD);
239 */ 229 */
240#define _GL_FUNCDECL_SYS(func,rettype,parameters,...) \ 230#define _GL_FUNCDECL_SYS(func,rettype,parameters,...) \
241 _GL_EXTERN_C_FUNC __VA_ARGS__ rettype _GL_FUNCDECL_SYS_NAME (func) parameters 231 _GL_EXTERN_C_FUNC __VA_ARGS__ rettype func parameters
242 232
243/* _GL_CXXALIAS_RPL (func, rettype, parameters); 233/* _GL_CXXALIAS_RPL (func, rettype, parameters);
244 declares a C++ alias called GNULIB_NAMESPACE::func 234 declares a C++ alias called GNULIB_NAMESPACE::func
@@ -409,7 +399,7 @@
409 _GL_CXXALIASWARN_1 (func, GNULIB_NAMESPACE) 399 _GL_CXXALIASWARN_1 (func, GNULIB_NAMESPACE)
410# define _GL_CXXALIASWARN_1(func,namespace) \ 400# define _GL_CXXALIASWARN_1(func,namespace) \
411 _GL_CXXALIASWARN_2 (func, namespace) 401 _GL_CXXALIASWARN_2 (func, namespace)
412/* To work around GCC bug <https://gcc.gnu.org/PR43881>, 402/* To work around GCC bug <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43881>,
413 we enable the warning only when not optimizing. */ 403 we enable the warning only when not optimizing. */
414# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__) 404# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__)
415# define _GL_CXXALIASWARN_2(func,namespace) \ 405# define _GL_CXXALIASWARN_2(func,namespace) \
@@ -437,7 +427,7 @@
437 GNULIB_NAMESPACE) 427 GNULIB_NAMESPACE)
438# define _GL_CXXALIASWARN1_1(func,rettype,parameters_and_attributes,namespace) \ 428# define _GL_CXXALIASWARN1_1(func,rettype,parameters_and_attributes,namespace) \
439 _GL_CXXALIASWARN1_2 (func, rettype, parameters_and_attributes, namespace) 429 _GL_CXXALIASWARN1_2 (func, rettype, parameters_and_attributes, namespace)
440/* To work around GCC bug <https://gcc.gnu.org/PR43881>, 430/* To work around GCC bug <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43881>,
441 we enable the warning only when not optimizing. */ 431 we enable the warning only when not optimizing. */
442# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__) 432# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__)
443# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \ 433# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \
@@ -1112,6 +1102,7 @@ _GL_CXXALIAS_SYS_CAST (pthread_create, int,
1112_GL_CXXALIASWARN (pthread_create); 1102_GL_CXXALIASWARN (pthread_create);
1113# endif 1103# endif
1114#elif defined GNULIB_POSIXCHECK 1104#elif defined GNULIB_POSIXCHECK
1105# undef pthread_create
1115# if HAVE_RAW_DECL_PTHREAD_CREATE 1106# if HAVE_RAW_DECL_PTHREAD_CREATE
1116_GL_WARN_ON_USE (pthread_create, "pthread_create is not portable - " 1107_GL_WARN_ON_USE (pthread_create, "pthread_create is not portable - "
1117 "use gnulib module pthread-thread for portability"); 1108 "use gnulib module pthread-thread for portability");
@@ -1138,6 +1129,7 @@ _GL_CXXALIAS_SYS (pthread_attr_init, int, (pthread_attr_t *attr));
1138_GL_CXXALIASWARN (pthread_attr_init); 1129_GL_CXXALIASWARN (pthread_attr_init);
1139# endif 1130# endif
1140#elif defined GNULIB_POSIXCHECK 1131#elif defined GNULIB_POSIXCHECK
1132# undef pthread_attr_init
1141# if HAVE_RAW_DECL_PTHREAD_ATTR_INIT 1133# if HAVE_RAW_DECL_PTHREAD_ATTR_INIT
1142_GL_WARN_ON_USE (pthread_attr_init, "pthread_attr_init is not portable - " 1134_GL_WARN_ON_USE (pthread_attr_init, "pthread_attr_init is not portable - "
1143 "use gnulib module pthread-thread for portability"); 1135 "use gnulib module pthread-thread for portability");
@@ -1168,6 +1160,7 @@ _GL_CXXALIAS_SYS (pthread_attr_getdetachstate, int,
1168_GL_CXXALIASWARN (pthread_attr_getdetachstate); 1160_GL_CXXALIASWARN (pthread_attr_getdetachstate);
1169# endif 1161# endif
1170#elif defined GNULIB_POSIXCHECK 1162#elif defined GNULIB_POSIXCHECK
1163# undef pthread_attr_getdetachstate
1171# if HAVE_RAW_DECL_PTHREAD_ATTR_GETDETACHSTATE 1164# if HAVE_RAW_DECL_PTHREAD_ATTR_GETDETACHSTATE
1172_GL_WARN_ON_USE (pthread_attr_getdetachstate, "pthread_attr_getdetachstate is not portable - " 1165_GL_WARN_ON_USE (pthread_attr_getdetachstate, "pthread_attr_getdetachstate is not portable - "
1173 "use gnulib module pthread-thread for portability"); 1166 "use gnulib module pthread-thread for portability");
@@ -1198,6 +1191,7 @@ _GL_CXXALIAS_SYS (pthread_attr_setdetachstate, int,
1198_GL_CXXALIASWARN (pthread_attr_setdetachstate); 1191_GL_CXXALIASWARN (pthread_attr_setdetachstate);
1199# endif 1192# endif
1200#elif defined GNULIB_POSIXCHECK 1193#elif defined GNULIB_POSIXCHECK
1194# undef pthread_attr_setdetachstate
1201# if HAVE_RAW_DECL_PTHREAD_ATTR_SETDETACHSTATE 1195# if HAVE_RAW_DECL_PTHREAD_ATTR_SETDETACHSTATE
1202_GL_WARN_ON_USE (pthread_attr_setdetachstate, "pthread_attr_setdetachstate is not portable - " 1196_GL_WARN_ON_USE (pthread_attr_setdetachstate, "pthread_attr_setdetachstate is not portable - "
1203 "use gnulib module pthread-thread for portability"); 1197 "use gnulib module pthread-thread for portability");
@@ -1224,6 +1218,7 @@ _GL_CXXALIAS_SYS (pthread_attr_destroy, int, (pthread_attr_t *attr));
1224_GL_CXXALIASWARN (pthread_attr_destroy); 1218_GL_CXXALIASWARN (pthread_attr_destroy);
1225# endif 1219# endif
1226#elif defined GNULIB_POSIXCHECK 1220#elif defined GNULIB_POSIXCHECK
1221# undef pthread_attr_destroy
1227# if HAVE_RAW_DECL_PTHREAD_ATTR_DESTROY 1222# if HAVE_RAW_DECL_PTHREAD_ATTR_DESTROY
1228_GL_WARN_ON_USE (pthread_attr_destroy, "pthread_attr_destroy is not portable - " 1223_GL_WARN_ON_USE (pthread_attr_destroy, "pthread_attr_destroy is not portable - "
1229 "use gnulib module pthread-thread for portability"); 1224 "use gnulib module pthread-thread for portability");
@@ -1248,6 +1243,7 @@ _GL_CXXALIAS_SYS (pthread_self, pthread_t, (void));
1248_GL_CXXALIASWARN (pthread_self); 1243_GL_CXXALIASWARN (pthread_self);
1249# endif 1244# endif
1250#elif defined GNULIB_POSIXCHECK 1245#elif defined GNULIB_POSIXCHECK
1246# undef pthread_self
1251# if HAVE_RAW_DECL_PTHREAD_SELF 1247# if HAVE_RAW_DECL_PTHREAD_SELF
1252_GL_WARN_ON_USE (pthread_self, "pthread_self is not portable - " 1248_GL_WARN_ON_USE (pthread_self, "pthread_self is not portable - "
1253 "use gnulib module pthread-thread for portability"); 1249 "use gnulib module pthread-thread for portability");
@@ -1272,6 +1268,7 @@ _GL_CXXALIAS_SYS (pthread_equal, int, (pthread_t thread1, pthread_t thread2));
1272_GL_CXXALIASWARN (pthread_equal); 1268_GL_CXXALIASWARN (pthread_equal);
1273# endif 1269# endif
1274#elif defined GNULIB_POSIXCHECK 1270#elif defined GNULIB_POSIXCHECK
1271# undef pthread_equal
1275# if HAVE_RAW_DECL_PTHREAD_EQUAL 1272# if HAVE_RAW_DECL_PTHREAD_EQUAL
1276_GL_WARN_ON_USE (pthread_equal, "pthread_equal is not portable - " 1273_GL_WARN_ON_USE (pthread_equal, "pthread_equal is not portable - "
1277 "use gnulib module pthread-thread for portability"); 1274 "use gnulib module pthread-thread for portability");
@@ -1296,6 +1293,7 @@ _GL_CXXALIAS_SYS (pthread_detach, int, (pthread_t thread));
1296_GL_CXXALIASWARN (pthread_detach); 1293_GL_CXXALIASWARN (pthread_detach);
1297# endif 1294# endif
1298#elif defined GNULIB_POSIXCHECK 1295#elif defined GNULIB_POSIXCHECK
1296# undef pthread_detach
1299# if HAVE_RAW_DECL_PTHREAD_DETACH 1297# if HAVE_RAW_DECL_PTHREAD_DETACH
1300_GL_WARN_ON_USE (pthread_detach, "pthread_detach is not portable - " 1298_GL_WARN_ON_USE (pthread_detach, "pthread_detach is not portable - "
1301 "use gnulib module pthread-thread for portability"); 1299 "use gnulib module pthread-thread for portability");
@@ -1320,6 +1318,7 @@ _GL_CXXALIAS_SYS (pthread_join, int, (pthread_t thread, void **valuep));
1320_GL_CXXALIASWARN (pthread_join); 1318_GL_CXXALIASWARN (pthread_join);
1321# endif 1319# endif
1322#elif defined GNULIB_POSIXCHECK 1320#elif defined GNULIB_POSIXCHECK
1321# undef pthread_join
1323# if HAVE_RAW_DECL_PTHREAD_JOIN 1322# if HAVE_RAW_DECL_PTHREAD_JOIN
1324_GL_WARN_ON_USE (pthread_join, "pthread_join is not portable - " 1323_GL_WARN_ON_USE (pthread_join, "pthread_join is not portable - "
1325 "use gnulib module pthread-thread for portability"); 1324 "use gnulib module pthread-thread for portability");
@@ -1345,6 +1344,7 @@ _GL_CXXALIAS_SYS_CAST (pthread_exit, void, (void *value));
1345_GL_CXXALIASWARN (pthread_exit); 1344_GL_CXXALIASWARN (pthread_exit);
1346# endif 1345# endif
1347#elif defined GNULIB_POSIXCHECK 1346#elif defined GNULIB_POSIXCHECK
1347# undef pthread_exit
1348# if HAVE_RAW_DECL_PTHREAD_EXIT 1348# if HAVE_RAW_DECL_PTHREAD_EXIT
1349_GL_WARN_ON_USE (pthread_exit, "pthread_exit is not portable - " 1349_GL_WARN_ON_USE (pthread_exit, "pthread_exit is not portable - "
1350 "use gnulib module pthread-thread for portability"); 1350 "use gnulib module pthread-thread for portability");
@@ -1378,6 +1378,7 @@ _GL_CXXALIAS_SYS_CAST (pthread_once, int,
1378_GL_CXXALIASWARN (pthread_once); 1378_GL_CXXALIASWARN (pthread_once);
1379# endif 1379# endif
1380#elif defined GNULIB_POSIXCHECK 1380#elif defined GNULIB_POSIXCHECK
1381# undef pthread_once
1381# if HAVE_RAW_DECL_PTHREAD_ONCE 1382# if HAVE_RAW_DECL_PTHREAD_ONCE
1382_GL_WARN_ON_USE (pthread_once, "pthread_once is not portable - " 1383_GL_WARN_ON_USE (pthread_once, "pthread_once is not portable - "
1383 "use gnulib module pthread-once for portability"); 1384 "use gnulib module pthread-once for portability");
@@ -1414,6 +1415,7 @@ _GL_CXXALIAS_SYS (pthread_mutex_init, int,
1414_GL_CXXALIASWARN (pthread_mutex_init); 1415_GL_CXXALIASWARN (pthread_mutex_init);
1415# endif 1416# endif
1416#elif defined GNULIB_POSIXCHECK 1417#elif defined GNULIB_POSIXCHECK
1418# undef pthread_mutex_init
1417# if HAVE_RAW_DECL_PTHREAD_MUTEX_INIT 1419# if HAVE_RAW_DECL_PTHREAD_MUTEX_INIT
1418_GL_WARN_ON_USE (pthread_mutex_init, "pthread_mutex_init is not portable - " 1420_GL_WARN_ON_USE (pthread_mutex_init, "pthread_mutex_init is not portable - "
1419 "use gnulib module pthread-mutex for portability"); 1421 "use gnulib module pthread-mutex for portability");
@@ -1440,6 +1442,7 @@ _GL_CXXALIAS_SYS (pthread_mutexattr_init, int, (pthread_mutexattr_t *attr));
1440_GL_CXXALIASWARN (pthread_mutexattr_init); 1442_GL_CXXALIASWARN (pthread_mutexattr_init);
1441# endif 1443# endif
1442#elif defined GNULIB_POSIXCHECK 1444#elif defined GNULIB_POSIXCHECK
1445# undef pthread_mutexattr_init
1443# if HAVE_RAW_DECL_PTHREAD_MUTEXATTR_INIT 1446# if HAVE_RAW_DECL_PTHREAD_MUTEXATTR_INIT
1444_GL_WARN_ON_USE (pthread_mutexattr_init, "pthread_mutexattr_init is not portable - " 1447_GL_WARN_ON_USE (pthread_mutexattr_init, "pthread_mutexattr_init is not portable - "
1445 "use gnulib module pthread-mutex for portability"); 1448 "use gnulib module pthread-mutex for portability");
@@ -1476,6 +1479,7 @@ _GL_CXXALIAS_SYS_CAST (pthread_mutexattr_gettype, int,
1476_GL_CXXALIASWARN (pthread_mutexattr_gettype); 1479_GL_CXXALIASWARN (pthread_mutexattr_gettype);
1477# endif 1480# endif
1478#elif defined GNULIB_POSIXCHECK 1481#elif defined GNULIB_POSIXCHECK
1482# undef pthread_mutexattr_gettype
1479# if HAVE_RAW_DECL_PTHREAD_MUTEXATTR_GETTYPE 1483# if HAVE_RAW_DECL_PTHREAD_MUTEXATTR_GETTYPE
1480_GL_WARN_ON_USE (pthread_mutexattr_gettype, "pthread_mutexattr_gettype is not portable - " 1484_GL_WARN_ON_USE (pthread_mutexattr_gettype, "pthread_mutexattr_gettype is not portable - "
1481 "use gnulib module pthread-mutex for portability"); 1485 "use gnulib module pthread-mutex for portability");
@@ -1504,6 +1508,7 @@ _GL_CXXALIAS_SYS (pthread_mutexattr_settype, int,
1504_GL_CXXALIASWARN (pthread_mutexattr_settype); 1508_GL_CXXALIASWARN (pthread_mutexattr_settype);
1505# endif 1509# endif
1506#elif defined GNULIB_POSIXCHECK 1510#elif defined GNULIB_POSIXCHECK
1511# undef pthread_mutexattr_settype
1507# if HAVE_RAW_DECL_PTHREAD_MUTEXATTR_SETTYPE 1512# if HAVE_RAW_DECL_PTHREAD_MUTEXATTR_SETTYPE
1508_GL_WARN_ON_USE (pthread_mutexattr_settype, "pthread_mutexattr_settype is not portable - " 1513_GL_WARN_ON_USE (pthread_mutexattr_settype, "pthread_mutexattr_settype is not portable - "
1509 "use gnulib module pthread-mutex for portability"); 1514 "use gnulib module pthread-mutex for portability");
@@ -1540,6 +1545,7 @@ _GL_CXXALIAS_SYS_CAST (pthread_mutexattr_getrobust, int,
1540_GL_CXXALIASWARN (pthread_mutexattr_getrobust); 1545_GL_CXXALIASWARN (pthread_mutexattr_getrobust);
1541# endif 1546# endif
1542#elif defined GNULIB_POSIXCHECK 1547#elif defined GNULIB_POSIXCHECK
1548# undef pthread_mutexattr_getrobust
1543# if HAVE_RAW_DECL_PTHREAD_MUTEXATTR_GETROBUST 1549# if HAVE_RAW_DECL_PTHREAD_MUTEXATTR_GETROBUST
1544_GL_WARN_ON_USE (pthread_mutexattr_getrobust, "pthread_mutexattr_getrobust is not portable - " 1550_GL_WARN_ON_USE (pthread_mutexattr_getrobust, "pthread_mutexattr_getrobust is not portable - "
1545 "use gnulib module pthread-mutex for portability"); 1551 "use gnulib module pthread-mutex for portability");
@@ -1570,6 +1576,7 @@ _GL_CXXALIAS_SYS (pthread_mutexattr_setrobust, int,
1570_GL_CXXALIASWARN (pthread_mutexattr_setrobust); 1576_GL_CXXALIASWARN (pthread_mutexattr_setrobust);
1571# endif 1577# endif
1572#elif defined GNULIB_POSIXCHECK 1578#elif defined GNULIB_POSIXCHECK
1579# undef pthread_mutexattr_setrobust
1573# if HAVE_RAW_DECL_PTHREAD_MUTEXATTR_SETROBUST 1580# if HAVE_RAW_DECL_PTHREAD_MUTEXATTR_SETROBUST
1574_GL_WARN_ON_USE (pthread_mutexattr_setrobust, "pthread_mutexattr_setrobust is not portable - " 1581_GL_WARN_ON_USE (pthread_mutexattr_setrobust, "pthread_mutexattr_setrobust is not portable - "
1575 "use gnulib module pthread-mutex for portability"); 1582 "use gnulib module pthread-mutex for portability");
@@ -1596,6 +1603,7 @@ _GL_CXXALIAS_SYS (pthread_mutexattr_destroy, int, (pthread_mutexattr_t *attr));
1596_GL_CXXALIASWARN (pthread_mutexattr_destroy); 1603_GL_CXXALIASWARN (pthread_mutexattr_destroy);
1597# endif 1604# endif
1598#elif defined GNULIB_POSIXCHECK 1605#elif defined GNULIB_POSIXCHECK
1606# undef pthread_mutexattr_destroy
1599# if HAVE_RAW_DECL_PTHREAD_MUTEXATTR_DESTROY 1607# if HAVE_RAW_DECL_PTHREAD_MUTEXATTR_DESTROY
1600_GL_WARN_ON_USE (pthread_mutexattr_destroy, "pthread_mutexattr_destroy is not portable - " 1608_GL_WARN_ON_USE (pthread_mutexattr_destroy, "pthread_mutexattr_destroy is not portable - "
1601 "use gnulib module pthread-mutex for portability"); 1609 "use gnulib module pthread-mutex for portability");
@@ -1622,6 +1630,7 @@ _GL_CXXALIAS_SYS (pthread_mutex_lock, int, (pthread_mutex_t *mutex));
1622_GL_CXXALIASWARN (pthread_mutex_lock); 1630_GL_CXXALIASWARN (pthread_mutex_lock);
1623# endif 1631# endif
1624#elif defined GNULIB_POSIXCHECK 1632#elif defined GNULIB_POSIXCHECK
1633# undef pthread_mutex_lock
1625# if HAVE_RAW_DECL_PTHREAD_MUTEX_LOCK 1634# if HAVE_RAW_DECL_PTHREAD_MUTEX_LOCK
1626_GL_WARN_ON_USE (pthread_mutex_lock, "pthread_mutex_lock is not portable - " 1635_GL_WARN_ON_USE (pthread_mutex_lock, "pthread_mutex_lock is not portable - "
1627 "use gnulib module pthread-mutex for portability"); 1636 "use gnulib module pthread-mutex for portability");
@@ -1648,6 +1657,7 @@ _GL_CXXALIAS_SYS (pthread_mutex_trylock, int, (pthread_mutex_t *mutex));
1648_GL_CXXALIASWARN (pthread_mutex_trylock); 1657_GL_CXXALIASWARN (pthread_mutex_trylock);
1649# endif 1658# endif
1650#elif defined GNULIB_POSIXCHECK 1659#elif defined GNULIB_POSIXCHECK
1660# undef pthread_mutex_trylock
1651# if HAVE_RAW_DECL_PTHREAD_MUTEX_TRYLOCK 1661# if HAVE_RAW_DECL_PTHREAD_MUTEX_TRYLOCK
1652_GL_WARN_ON_USE (pthread_mutex_trylock, "pthread_mutex_trylock is not portable - " 1662_GL_WARN_ON_USE (pthread_mutex_trylock, "pthread_mutex_trylock is not portable - "
1653 "use gnulib module pthread-mutex for portability"); 1663 "use gnulib module pthread-mutex for portability");
@@ -1682,6 +1692,7 @@ _GL_CXXALIAS_SYS (pthread_mutex_timedlock, int,
1682_GL_CXXALIASWARN (pthread_mutex_timedlock); 1692_GL_CXXALIASWARN (pthread_mutex_timedlock);
1683# endif 1693# endif
1684#elif defined GNULIB_POSIXCHECK 1694#elif defined GNULIB_POSIXCHECK
1695# undef pthread_mutex_timedlock
1685# if HAVE_RAW_DECL_PTHREAD_MUTEX_TIMEDLOCK 1696# if HAVE_RAW_DECL_PTHREAD_MUTEX_TIMEDLOCK
1686_GL_WARN_ON_USE (pthread_mutex_timedlock, "pthread_mutex_timedlock is not portable - " 1697_GL_WARN_ON_USE (pthread_mutex_timedlock, "pthread_mutex_timedlock is not portable - "
1687 "use gnulib module pthread_mutex_timedlock for portability"); 1698 "use gnulib module pthread_mutex_timedlock for portability");
@@ -1708,6 +1719,7 @@ _GL_CXXALIAS_SYS (pthread_mutex_unlock, int, (pthread_mutex_t *mutex));
1708_GL_CXXALIASWARN (pthread_mutex_unlock); 1719_GL_CXXALIASWARN (pthread_mutex_unlock);
1709# endif 1720# endif
1710#elif defined GNULIB_POSIXCHECK 1721#elif defined GNULIB_POSIXCHECK
1722# undef pthread_mutex_unlock
1711# if HAVE_RAW_DECL_PTHREAD_MUTEX_UNLOCK 1723# if HAVE_RAW_DECL_PTHREAD_MUTEX_UNLOCK
1712_GL_WARN_ON_USE (pthread_mutex_unlock, "pthread_mutex_unlock is not portable - " 1724_GL_WARN_ON_USE (pthread_mutex_unlock, "pthread_mutex_unlock is not portable - "
1713 "use gnulib module pthread-mutex for portability"); 1725 "use gnulib module pthread-mutex for portability");
@@ -1734,6 +1746,7 @@ _GL_CXXALIAS_SYS (pthread_mutex_destroy, int, (pthread_mutex_t *mutex));
1734_GL_CXXALIASWARN (pthread_mutex_destroy); 1746_GL_CXXALIASWARN (pthread_mutex_destroy);
1735# endif 1747# endif
1736#elif defined GNULIB_POSIXCHECK 1748#elif defined GNULIB_POSIXCHECK
1749# undef pthread_mutex_destroy
1737# if HAVE_RAW_DECL_PTHREAD_MUTEX_DESTROY 1750# if HAVE_RAW_DECL_PTHREAD_MUTEX_DESTROY
1738_GL_WARN_ON_USE (pthread_mutex_destroy, "pthread_mutex_destroy is not portable - " 1751_GL_WARN_ON_USE (pthread_mutex_destroy, "pthread_mutex_destroy is not portable - "
1739 "use gnulib module pthread-mutex for portability"); 1752 "use gnulib module pthread-mutex for portability");
@@ -1770,6 +1783,7 @@ _GL_CXXALIAS_SYS (pthread_rwlock_init, int,
1770_GL_CXXALIASWARN (pthread_rwlock_init); 1783_GL_CXXALIASWARN (pthread_rwlock_init);
1771# endif 1784# endif
1772#elif defined GNULIB_POSIXCHECK 1785#elif defined GNULIB_POSIXCHECK
1786# undef pthread_rwlock_init
1773# if HAVE_RAW_DECL_PTHREAD_RWLOCK_INIT 1787# if HAVE_RAW_DECL_PTHREAD_RWLOCK_INIT
1774_GL_WARN_ON_USE (pthread_rwlock_init, "pthread_rwlock_init is not portable - " 1788_GL_WARN_ON_USE (pthread_rwlock_init, "pthread_rwlock_init is not portable - "
1775 "use gnulib module pthread-rwlock for portability"); 1789 "use gnulib module pthread-rwlock for portability");
@@ -1796,6 +1810,7 @@ _GL_CXXALIAS_SYS (pthread_rwlockattr_init, int, (pthread_rwlockattr_t *attr));
1796_GL_CXXALIASWARN (pthread_rwlockattr_init); 1810_GL_CXXALIASWARN (pthread_rwlockattr_init);
1797# endif 1811# endif
1798#elif defined GNULIB_POSIXCHECK 1812#elif defined GNULIB_POSIXCHECK
1813# undef pthread_rwlockattr_init
1799# if HAVE_RAW_DECL_PTHREAD_RWLOCKATTR_INIT 1814# if HAVE_RAW_DECL_PTHREAD_RWLOCKATTR_INIT
1800_GL_WARN_ON_USE (pthread_rwlockattr_init, "pthread_rwlockattr_init is not portable - " 1815_GL_WARN_ON_USE (pthread_rwlockattr_init, "pthread_rwlockattr_init is not portable - "
1801 "use gnulib module pthread-rwlock for portability"); 1816 "use gnulib module pthread-rwlock for portability");
@@ -1824,6 +1839,7 @@ _GL_CXXALIAS_SYS (pthread_rwlockattr_destroy, int,
1824_GL_CXXALIASWARN (pthread_rwlockattr_destroy); 1839_GL_CXXALIASWARN (pthread_rwlockattr_destroy);
1825# endif 1840# endif
1826#elif defined GNULIB_POSIXCHECK 1841#elif defined GNULIB_POSIXCHECK
1842# undef pthread_rwlockattr_destroy
1827# if HAVE_RAW_DECL_PTHREAD_RWLOCKATTR_DESTROY 1843# if HAVE_RAW_DECL_PTHREAD_RWLOCKATTR_DESTROY
1828_GL_WARN_ON_USE (pthread_rwlockattr_destroy, "pthread_rwlockattr_destroy is not portable - " 1844_GL_WARN_ON_USE (pthread_rwlockattr_destroy, "pthread_rwlockattr_destroy is not portable - "
1829 "use gnulib module pthread-rwlock for portability"); 1845 "use gnulib module pthread-rwlock for portability");
@@ -1850,6 +1866,7 @@ _GL_CXXALIAS_SYS (pthread_rwlock_rdlock, int, (pthread_rwlock_t *lock));
1850_GL_CXXALIASWARN (pthread_rwlock_rdlock); 1866_GL_CXXALIASWARN (pthread_rwlock_rdlock);
1851# endif 1867# endif
1852#elif defined GNULIB_POSIXCHECK 1868#elif defined GNULIB_POSIXCHECK
1869# undef pthread_rwlock_rdlock
1853# if HAVE_RAW_DECL_PTHREAD_RWLOCK_RDLOCK 1870# if HAVE_RAW_DECL_PTHREAD_RWLOCK_RDLOCK
1854_GL_WARN_ON_USE (pthread_rwlock_rdlock, "pthread_rwlock_rdlock is not portable - " 1871_GL_WARN_ON_USE (pthread_rwlock_rdlock, "pthread_rwlock_rdlock is not portable - "
1855 "use gnulib module pthread-rwlock for portability"); 1872 "use gnulib module pthread-rwlock for portability");
@@ -1876,6 +1893,7 @@ _GL_CXXALIAS_SYS (pthread_rwlock_wrlock, int, (pthread_rwlock_t *lock));
1876_GL_CXXALIASWARN (pthread_rwlock_wrlock); 1893_GL_CXXALIASWARN (pthread_rwlock_wrlock);
1877# endif 1894# endif
1878#elif defined GNULIB_POSIXCHECK 1895#elif defined GNULIB_POSIXCHECK
1896# undef pthread_rwlock_wrlock
1879# if HAVE_RAW_DECL_PTHREAD_RWLOCK_WRLOCK 1897# if HAVE_RAW_DECL_PTHREAD_RWLOCK_WRLOCK
1880_GL_WARN_ON_USE (pthread_rwlock_wrlock, "pthread_rwlock_wrlock is not portable - " 1898_GL_WARN_ON_USE (pthread_rwlock_wrlock, "pthread_rwlock_wrlock is not portable - "
1881 "use gnulib module pthread-rwlock for portability"); 1899 "use gnulib module pthread-rwlock for portability");
@@ -1902,6 +1920,7 @@ _GL_CXXALIAS_SYS (pthread_rwlock_tryrdlock, int, (pthread_rwlock_t *lock));
1902_GL_CXXALIASWARN (pthread_rwlock_tryrdlock); 1920_GL_CXXALIASWARN (pthread_rwlock_tryrdlock);
1903# endif 1921# endif
1904#elif defined GNULIB_POSIXCHECK 1922#elif defined GNULIB_POSIXCHECK
1923# undef pthread_rwlock_tryrdlock
1905# if HAVE_RAW_DECL_PTHREAD_RWLOCK_TRYRDLOCK 1924# if HAVE_RAW_DECL_PTHREAD_RWLOCK_TRYRDLOCK
1906_GL_WARN_ON_USE (pthread_rwlock_tryrdlock, "pthread_rwlock_tryrdlock is not portable - " 1925_GL_WARN_ON_USE (pthread_rwlock_tryrdlock, "pthread_rwlock_tryrdlock is not portable - "
1907 "use gnulib module pthread-rwlock for portability"); 1926 "use gnulib module pthread-rwlock for portability");
@@ -1928,6 +1947,7 @@ _GL_CXXALIAS_SYS (pthread_rwlock_trywrlock, int, (pthread_rwlock_t *lock));
1928_GL_CXXALIASWARN (pthread_rwlock_trywrlock); 1947_GL_CXXALIASWARN (pthread_rwlock_trywrlock);
1929# endif 1948# endif
1930#elif defined GNULIB_POSIXCHECK 1949#elif defined GNULIB_POSIXCHECK
1950# undef pthread_rwlock_trywrlock
1931# if HAVE_RAW_DECL_PTHREAD_RWLOCK_TRYWRLOCK 1951# if HAVE_RAW_DECL_PTHREAD_RWLOCK_TRYWRLOCK
1932_GL_WARN_ON_USE (pthread_rwlock_trywrlock, "pthread_rwlock_trywrlock is not portable - " 1952_GL_WARN_ON_USE (pthread_rwlock_trywrlock, "pthread_rwlock_trywrlock is not portable - "
1933 "use gnulib module pthread-rwlock for portability"); 1953 "use gnulib module pthread-rwlock for portability");
@@ -1962,6 +1982,7 @@ _GL_CXXALIAS_SYS (pthread_rwlock_timedrdlock, int,
1962_GL_CXXALIASWARN (pthread_rwlock_timedrdlock); 1982_GL_CXXALIASWARN (pthread_rwlock_timedrdlock);
1963# endif 1983# endif
1964#elif defined GNULIB_POSIXCHECK 1984#elif defined GNULIB_POSIXCHECK
1985# undef pthread_rwlock_timedrdlock
1965# if HAVE_RAW_DECL_PTHREAD_RWLOCK_TIMEDRDLOCK 1986# if HAVE_RAW_DECL_PTHREAD_RWLOCK_TIMEDRDLOCK
1966_GL_WARN_ON_USE (pthread_rwlock_timedrdlock, "pthread_rwlock_timedrdlock is not portable - " 1987_GL_WARN_ON_USE (pthread_rwlock_timedrdlock, "pthread_rwlock_timedrdlock is not portable - "
1967 "use gnulib module pthread-rwlock for portability"); 1988 "use gnulib module pthread-rwlock for portability");
@@ -1996,6 +2017,7 @@ _GL_CXXALIAS_SYS (pthread_rwlock_timedwrlock, int,
1996_GL_CXXALIASWARN (pthread_rwlock_timedwrlock); 2017_GL_CXXALIASWARN (pthread_rwlock_timedwrlock);
1997# endif 2018# endif
1998#elif defined GNULIB_POSIXCHECK 2019#elif defined GNULIB_POSIXCHECK
2020# undef pthread_rwlock_timedwrlock
1999# if HAVE_RAW_DECL_PTHREAD_RWLOCK_TIMEDWRLOCK 2021# if HAVE_RAW_DECL_PTHREAD_RWLOCK_TIMEDWRLOCK
2000_GL_WARN_ON_USE (pthread_rwlock_timedwrlock, "pthread_rwlock_timedwrlock is not portable - " 2022_GL_WARN_ON_USE (pthread_rwlock_timedwrlock, "pthread_rwlock_timedwrlock is not portable - "
2001 "use gnulib module pthread-rwlock for portability"); 2023 "use gnulib module pthread-rwlock for portability");
@@ -2022,6 +2044,7 @@ _GL_CXXALIAS_SYS (pthread_rwlock_unlock, int, (pthread_rwlock_t *lock));
2022_GL_CXXALIASWARN (pthread_rwlock_unlock); 2044_GL_CXXALIASWARN (pthread_rwlock_unlock);
2023# endif 2045# endif
2024#elif defined GNULIB_POSIXCHECK 2046#elif defined GNULIB_POSIXCHECK
2047# undef pthread_rwlock_unlock
2025# if HAVE_RAW_DECL_PTHREAD_RWLOCK_UNLOCK 2048# if HAVE_RAW_DECL_PTHREAD_RWLOCK_UNLOCK
2026_GL_WARN_ON_USE (pthread_rwlock_unlock, "pthread_rwlock_unlock is not portable - " 2049_GL_WARN_ON_USE (pthread_rwlock_unlock, "pthread_rwlock_unlock is not portable - "
2027 "use gnulib module pthread-rwlock for portability"); 2050 "use gnulib module pthread-rwlock for portability");
@@ -2048,6 +2071,7 @@ _GL_CXXALIAS_SYS (pthread_rwlock_destroy, int, (pthread_rwlock_t *lock));
2048_GL_CXXALIASWARN (pthread_rwlock_destroy); 2071_GL_CXXALIASWARN (pthread_rwlock_destroy);
2049# endif 2072# endif
2050#elif defined GNULIB_POSIXCHECK 2073#elif defined GNULIB_POSIXCHECK
2074# undef pthread_rwlock_destroy
2051# if HAVE_RAW_DECL_PTHREAD_RWLOCK_DESTROY 2075# if HAVE_RAW_DECL_PTHREAD_RWLOCK_DESTROY
2052_GL_WARN_ON_USE (pthread_rwlock_destroy, "pthread_rwlock_destroy is not portable - " 2076_GL_WARN_ON_USE (pthread_rwlock_destroy, "pthread_rwlock_destroy is not portable - "
2053 "use gnulib module pthread-rwlock for portability"); 2077 "use gnulib module pthread-rwlock for portability");
@@ -2084,6 +2108,7 @@ _GL_CXXALIAS_SYS (pthread_cond_init, int,
2084_GL_CXXALIASWARN (pthread_cond_init); 2108_GL_CXXALIASWARN (pthread_cond_init);
2085# endif 2109# endif
2086#elif defined GNULIB_POSIXCHECK 2110#elif defined GNULIB_POSIXCHECK
2111# undef pthread_cond_init
2087# if HAVE_RAW_DECL_PTHREAD_COND_INIT 2112# if HAVE_RAW_DECL_PTHREAD_COND_INIT
2088_GL_WARN_ON_USE (pthread_cond_init, "pthread_cond_init is not portable - " 2113_GL_WARN_ON_USE (pthread_cond_init, "pthread_cond_init is not portable - "
2089 "use gnulib module pthread-cond for portability"); 2114 "use gnulib module pthread-cond for portability");
@@ -2110,6 +2135,7 @@ _GL_CXXALIAS_SYS (pthread_condattr_init, int, (pthread_condattr_t *attr));
2110_GL_CXXALIASWARN (pthread_condattr_init); 2135_GL_CXXALIASWARN (pthread_condattr_init);
2111# endif 2136# endif
2112#elif defined GNULIB_POSIXCHECK 2137#elif defined GNULIB_POSIXCHECK
2138# undef pthread_condattr_init
2113# if HAVE_RAW_DECL_PTHREAD_CONDATTR_INIT 2139# if HAVE_RAW_DECL_PTHREAD_CONDATTR_INIT
2114_GL_WARN_ON_USE (pthread_condattr_init, "pthread_condattr_init is not portable - " 2140_GL_WARN_ON_USE (pthread_condattr_init, "pthread_condattr_init is not portable - "
2115 "use gnulib module pthread-cond for portability"); 2141 "use gnulib module pthread-cond for portability");
@@ -2136,6 +2162,7 @@ _GL_CXXALIAS_SYS (pthread_condattr_destroy, int, (pthread_condattr_t *attr));
2136_GL_CXXALIASWARN (pthread_condattr_destroy); 2162_GL_CXXALIASWARN (pthread_condattr_destroy);
2137# endif 2163# endif
2138#elif defined GNULIB_POSIXCHECK 2164#elif defined GNULIB_POSIXCHECK
2165# undef pthread_condattr_destroy
2139# if HAVE_RAW_DECL_PTHREAD_CONDATTR_DESTROY 2166# if HAVE_RAW_DECL_PTHREAD_CONDATTR_DESTROY
2140_GL_WARN_ON_USE (pthread_condattr_destroy, "pthread_condattr_destroy is not portable - " 2167_GL_WARN_ON_USE (pthread_condattr_destroy, "pthread_condattr_destroy is not portable - "
2141 "use gnulib module pthread-cond for portability"); 2168 "use gnulib module pthread-cond for portability");
@@ -2170,6 +2197,7 @@ _GL_CXXALIAS_SYS (pthread_cond_wait, int,
2170_GL_CXXALIASWARN (pthread_cond_wait); 2197_GL_CXXALIASWARN (pthread_cond_wait);
2171# endif 2198# endif
2172#elif defined GNULIB_POSIXCHECK 2199#elif defined GNULIB_POSIXCHECK
2200# undef pthread_cond_wait
2173# if HAVE_RAW_DECL_PTHREAD_COND_WAIT 2201# if HAVE_RAW_DECL_PTHREAD_COND_WAIT
2174_GL_WARN_ON_USE (pthread_cond_wait, "pthread_cond_wait is not portable - " 2202_GL_WARN_ON_USE (pthread_cond_wait, "pthread_cond_wait is not portable - "
2175 "use gnulib module pthread-cond for portability"); 2203 "use gnulib module pthread-cond for portability");
@@ -2208,6 +2236,7 @@ _GL_CXXALIAS_SYS (pthread_cond_timedwait, int,
2208_GL_CXXALIASWARN (pthread_cond_timedwait); 2236_GL_CXXALIASWARN (pthread_cond_timedwait);
2209# endif 2237# endif
2210#elif defined GNULIB_POSIXCHECK 2238#elif defined GNULIB_POSIXCHECK
2239# undef pthread_cond_timedwait
2211# if HAVE_RAW_DECL_PTHREAD_COND_TIMEDWAIT 2240# if HAVE_RAW_DECL_PTHREAD_COND_TIMEDWAIT
2212_GL_WARN_ON_USE (pthread_cond_timedwait, "pthread_cond_timedwait is not portable - " 2241_GL_WARN_ON_USE (pthread_cond_timedwait, "pthread_cond_timedwait is not portable - "
2213 "use gnulib module pthread-cond for portability"); 2242 "use gnulib module pthread-cond for portability");
@@ -2234,6 +2263,7 @@ _GL_CXXALIAS_SYS (pthread_cond_signal, int, (pthread_cond_t *cond));
2234_GL_CXXALIASWARN (pthread_cond_signal); 2263_GL_CXXALIASWARN (pthread_cond_signal);
2235# endif 2264# endif
2236#elif defined GNULIB_POSIXCHECK 2265#elif defined GNULIB_POSIXCHECK
2266# undef pthread_cond_signal
2237# if HAVE_RAW_DECL_PTHREAD_COND_SIGNAL 2267# if HAVE_RAW_DECL_PTHREAD_COND_SIGNAL
2238_GL_WARN_ON_USE (pthread_cond_signal, "pthread_cond_signal is not portable - " 2268_GL_WARN_ON_USE (pthread_cond_signal, "pthread_cond_signal is not portable - "
2239 "use gnulib module pthread-cond for portability"); 2269 "use gnulib module pthread-cond for portability");
@@ -2260,6 +2290,7 @@ _GL_CXXALIAS_SYS (pthread_cond_broadcast, int, (pthread_cond_t *cond));
2260_GL_CXXALIASWARN (pthread_cond_broadcast); 2290_GL_CXXALIASWARN (pthread_cond_broadcast);
2261# endif 2291# endif
2262#elif defined GNULIB_POSIXCHECK 2292#elif defined GNULIB_POSIXCHECK
2293# undef pthread_cond_broadcast
2263# if HAVE_RAW_DECL_PTHREAD_COND_BROADCAST 2294# if HAVE_RAW_DECL_PTHREAD_COND_BROADCAST
2264_GL_WARN_ON_USE (pthread_cond_broadcast, "pthread_cond_broadcast is not portable - " 2295_GL_WARN_ON_USE (pthread_cond_broadcast, "pthread_cond_broadcast is not portable - "
2265 "use gnulib module pthread-cond for portability"); 2296 "use gnulib module pthread-cond for portability");
@@ -2286,6 +2317,7 @@ _GL_CXXALIAS_SYS (pthread_cond_destroy, int, (pthread_cond_t *cond));
2286_GL_CXXALIASWARN (pthread_cond_destroy); 2317_GL_CXXALIASWARN (pthread_cond_destroy);
2287# endif 2318# endif
2288#elif defined GNULIB_POSIXCHECK 2319#elif defined GNULIB_POSIXCHECK
2320# undef pthread_cond_destroy
2289# if HAVE_RAW_DECL_PTHREAD_COND_DESTROY 2321# if HAVE_RAW_DECL_PTHREAD_COND_DESTROY
2290_GL_WARN_ON_USE (pthread_cond_destroy, "pthread_cond_destroy is not portable - " 2322_GL_WARN_ON_USE (pthread_cond_destroy, "pthread_cond_destroy is not portable - "
2291 "use gnulib module pthread-cond for portability"); 2323 "use gnulib module pthread-cond for portability");
@@ -2318,6 +2350,7 @@ _GL_CXXALIAS_SYS_CAST (pthread_key_create, int,
2318_GL_CXXALIASWARN (pthread_key_create); 2350_GL_CXXALIASWARN (pthread_key_create);
2319# endif 2351# endif
2320#elif defined GNULIB_POSIXCHECK 2352#elif defined GNULIB_POSIXCHECK
2353# undef pthread_key_create
2321# if HAVE_RAW_DECL_PTHREAD_KEY_CREATE 2354# if HAVE_RAW_DECL_PTHREAD_KEY_CREATE
2322_GL_WARN_ON_USE (pthread_key_create, "pthread_key_create is not portable - " 2355_GL_WARN_ON_USE (pthread_key_create, "pthread_key_create is not portable - "
2323 "use gnulib module pthread-tss for portability"); 2356 "use gnulib module pthread-tss for portability");
@@ -2346,6 +2379,7 @@ _GL_CXXALIAS_SYS (pthread_setspecific, int,
2346_GL_CXXALIASWARN (pthread_setspecific); 2379_GL_CXXALIASWARN (pthread_setspecific);
2347# endif 2380# endif
2348#elif defined GNULIB_POSIXCHECK 2381#elif defined GNULIB_POSIXCHECK
2382# undef pthread_setspecific
2349# if HAVE_RAW_DECL_PTHREAD_SETSPECIFIC 2383# if HAVE_RAW_DECL_PTHREAD_SETSPECIFIC
2350_GL_WARN_ON_USE (pthread_setspecific, "pthread_setspecific is not portable - " 2384_GL_WARN_ON_USE (pthread_setspecific, "pthread_setspecific is not portable - "
2351 "use gnulib module pthread-tss for portability"); 2385 "use gnulib module pthread-tss for portability");
@@ -2370,6 +2404,7 @@ _GL_CXXALIAS_SYS (pthread_getspecific, void *, (pthread_key_t key));
2370_GL_CXXALIASWARN (pthread_getspecific); 2404_GL_CXXALIASWARN (pthread_getspecific);
2371# endif 2405# endif
2372#elif defined GNULIB_POSIXCHECK 2406#elif defined GNULIB_POSIXCHECK
2407# undef pthread_getspecific
2373# if HAVE_RAW_DECL_PTHREAD_GETSPECIFIC 2408# if HAVE_RAW_DECL_PTHREAD_GETSPECIFIC
2374_GL_WARN_ON_USE (pthread_getspecific, "pthread_getspecific is not portable - " 2409_GL_WARN_ON_USE (pthread_getspecific, "pthread_getspecific is not portable - "
2375 "use gnulib module pthread-tss for portability"); 2410 "use gnulib module pthread-tss for portability");
@@ -2394,6 +2429,7 @@ _GL_CXXALIAS_SYS (pthread_key_delete, int, (pthread_key_t key));
2394_GL_CXXALIASWARN (pthread_key_delete); 2429_GL_CXXALIASWARN (pthread_key_delete);
2395# endif 2430# endif
2396#elif defined GNULIB_POSIXCHECK 2431#elif defined GNULIB_POSIXCHECK
2432# undef pthread_key_delete
2397# if HAVE_RAW_DECL_PTHREAD_KEY_DELETE 2433# if HAVE_RAW_DECL_PTHREAD_KEY_DELETE
2398_GL_WARN_ON_USE (pthread_key_delete, "pthread_key_delete is not portable - " 2434_GL_WARN_ON_USE (pthread_key_delete, "pthread_key_delete is not portable - "
2399 "use gnulib module pthread-tss for portability"); 2435 "use gnulib module pthread-tss for portability");
@@ -2426,6 +2462,7 @@ _GL_CXXALIAS_SYS (pthread_spin_init, int,
2426_GL_CXXALIASWARN (pthread_spin_init); 2462_GL_CXXALIASWARN (pthread_spin_init);
2427# endif 2463# endif
2428#elif defined GNULIB_POSIXCHECK 2464#elif defined GNULIB_POSIXCHECK
2465# undef pthread_spin_init
2429# if HAVE_RAW_DECL_PTHREAD_SPIN_INIT 2466# if HAVE_RAW_DECL_PTHREAD_SPIN_INIT
2430_GL_WARN_ON_USE (pthread_spin_init, "pthread_spin_init is not portable - " 2467_GL_WARN_ON_USE (pthread_spin_init, "pthread_spin_init is not portable - "
2431 "use gnulib module pthread-spin for portability"); 2468 "use gnulib module pthread-spin for portability");
@@ -2452,6 +2489,7 @@ _GL_CXXALIAS_SYS (pthread_spin_lock, int, (pthread_spinlock_t *lock));
2452_GL_CXXALIASWARN (pthread_spin_lock); 2489_GL_CXXALIASWARN (pthread_spin_lock);
2453# endif 2490# endif
2454#elif defined GNULIB_POSIXCHECK 2491#elif defined GNULIB_POSIXCHECK
2492# undef pthread_spin_lock
2455# if HAVE_RAW_DECL_PTHREAD_SPIN_LOCK 2493# if HAVE_RAW_DECL_PTHREAD_SPIN_LOCK
2456_GL_WARN_ON_USE (pthread_spin_lock, "pthread_spin_lock is not portable - " 2494_GL_WARN_ON_USE (pthread_spin_lock, "pthread_spin_lock is not portable - "
2457 "use gnulib module pthread-spin for portability"); 2495 "use gnulib module pthread-spin for portability");
@@ -2478,6 +2516,7 @@ _GL_CXXALIAS_SYS (pthread_spin_trylock, int, (pthread_spinlock_t *lock));
2478_GL_CXXALIASWARN (pthread_spin_trylock); 2516_GL_CXXALIASWARN (pthread_spin_trylock);
2479# endif 2517# endif
2480#elif defined GNULIB_POSIXCHECK 2518#elif defined GNULIB_POSIXCHECK
2519# undef pthread_spin_trylock
2481# if HAVE_RAW_DECL_PTHREAD_SPIN_TRYLOCK 2520# if HAVE_RAW_DECL_PTHREAD_SPIN_TRYLOCK
2482_GL_WARN_ON_USE (pthread_spin_trylock, "pthread_spin_trylock is not portable - " 2521_GL_WARN_ON_USE (pthread_spin_trylock, "pthread_spin_trylock is not portable - "
2483 "use gnulib module pthread-spin for portability"); 2522 "use gnulib module pthread-spin for portability");
@@ -2504,6 +2543,7 @@ _GL_CXXALIAS_SYS (pthread_spin_unlock, int, (pthread_spinlock_t *lock));
2504_GL_CXXALIASWARN (pthread_spin_unlock); 2543_GL_CXXALIASWARN (pthread_spin_unlock);
2505# endif 2544# endif
2506#elif defined GNULIB_POSIXCHECK 2545#elif defined GNULIB_POSIXCHECK
2546# undef pthread_spin_unlock
2507# if HAVE_RAW_DECL_PTHREAD_SPIN_UNLOCK 2547# if HAVE_RAW_DECL_PTHREAD_SPIN_UNLOCK
2508_GL_WARN_ON_USE (pthread_spin_unlock, "pthread_spin_unlock is not portable - " 2548_GL_WARN_ON_USE (pthread_spin_unlock, "pthread_spin_unlock is not portable - "
2509 "use gnulib module pthread-spin for portability"); 2549 "use gnulib module pthread-spin for portability");
@@ -2530,6 +2570,7 @@ _GL_CXXALIAS_SYS (pthread_spin_destroy, int, (pthread_spinlock_t *lock));
2530_GL_CXXALIASWARN (pthread_spin_destroy); 2570_GL_CXXALIASWARN (pthread_spin_destroy);
2531# endif 2571# endif
2532#elif defined GNULIB_POSIXCHECK 2572#elif defined GNULIB_POSIXCHECK
2573# undef pthread_spin_destroy
2533# if HAVE_RAW_DECL_PTHREAD_SPIN_DESTROY 2574# if HAVE_RAW_DECL_PTHREAD_SPIN_DESTROY
2534_GL_WARN_ON_USE (pthread_spin_destroy, "pthread_spin_destroy is not portable - " 2575_GL_WARN_ON_USE (pthread_spin_destroy, "pthread_spin_destroy is not portable - "
2535 "use gnulib module pthread-spin for portability"); 2576 "use gnulib module pthread-spin for portability");
diff --git a/gl/sched.h b/gl/sched.h
index 4d9d546d..7fd645f0 100644
--- a/gl/sched.h
+++ b/gl/sched.h
@@ -47,7 +47,7 @@
47 47
48/* Get pid_t. 48/* Get pid_t.
49 This is needed on glibc 2.11 (see 49 This is needed on glibc 2.11 (see
50 glibc bug <https://sourceware.org/PR13198>) 50 glibc bug <https://sourceware.org/bugzilla/show_bug.cgi?id=13198>)
51 and Mac OS X 10.5. */ 51 and Mac OS X 10.5. */
52#include <sys/types.h> 52#include <sys/types.h>
53 53
@@ -191,16 +191,6 @@
191#define _GL_FUNCDECL_RPL_1(rpl_func,rettype,parameters,...) \ 191#define _GL_FUNCDECL_RPL_1(rpl_func,rettype,parameters,...) \
192 _GL_EXTERN_C_FUNC __VA_ARGS__ rettype rpl_func parameters 192 _GL_EXTERN_C_FUNC __VA_ARGS__ rettype rpl_func parameters
193 193
194/* _GL_FUNCDECL_SYS_NAME (func) expands to plain func if C++, and to
195 parenthesized func otherwise. Parenthesization is needed in C23 if
196 the function is like strchr and so is a qualifier-generic macro
197 that expands to something more complicated. */
198#ifdef __cplusplus
199# define _GL_FUNCDECL_SYS_NAME(func) func
200#else
201# define _GL_FUNCDECL_SYS_NAME(func) (func)
202#endif
203
204/* _GL_FUNCDECL_SYS (func, rettype, parameters, [attributes]); 194/* _GL_FUNCDECL_SYS (func, rettype, parameters, [attributes]);
205 declares the system function, named func, with the given prototype, 195 declares the system function, named func, with the given prototype,
206 consisting of return type, parameters, and attributes. 196 consisting of return type, parameters, and attributes.
@@ -213,7 +203,7 @@
213 _GL_FUNCDECL_SYS (posix_openpt, int, (int flags), _GL_ATTRIBUTE_NODISCARD); 203 _GL_FUNCDECL_SYS (posix_openpt, int, (int flags), _GL_ATTRIBUTE_NODISCARD);
214 */ 204 */
215#define _GL_FUNCDECL_SYS(func,rettype,parameters,...) \ 205#define _GL_FUNCDECL_SYS(func,rettype,parameters,...) \
216 _GL_EXTERN_C_FUNC __VA_ARGS__ rettype _GL_FUNCDECL_SYS_NAME (func) parameters 206 _GL_EXTERN_C_FUNC __VA_ARGS__ rettype func parameters
217 207
218/* _GL_CXXALIAS_RPL (func, rettype, parameters); 208/* _GL_CXXALIAS_RPL (func, rettype, parameters);
219 declares a C++ alias called GNULIB_NAMESPACE::func 209 declares a C++ alias called GNULIB_NAMESPACE::func
@@ -384,7 +374,7 @@
384 _GL_CXXALIASWARN_1 (func, GNULIB_NAMESPACE) 374 _GL_CXXALIASWARN_1 (func, GNULIB_NAMESPACE)
385# define _GL_CXXALIASWARN_1(func,namespace) \ 375# define _GL_CXXALIASWARN_1(func,namespace) \
386 _GL_CXXALIASWARN_2 (func, namespace) 376 _GL_CXXALIASWARN_2 (func, namespace)
387/* To work around GCC bug <https://gcc.gnu.org/PR43881>, 377/* To work around GCC bug <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43881>,
388 we enable the warning only when not optimizing. */ 378 we enable the warning only when not optimizing. */
389# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__) 379# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__)
390# define _GL_CXXALIASWARN_2(func,namespace) \ 380# define _GL_CXXALIASWARN_2(func,namespace) \
@@ -412,7 +402,7 @@
412 GNULIB_NAMESPACE) 402 GNULIB_NAMESPACE)
413# define _GL_CXXALIASWARN1_1(func,rettype,parameters_and_attributes,namespace) \ 403# define _GL_CXXALIASWARN1_1(func,rettype,parameters_and_attributes,namespace) \
414 _GL_CXXALIASWARN1_2 (func, rettype, parameters_and_attributes, namespace) 404 _GL_CXXALIASWARN1_2 (func, rettype, parameters_and_attributes, namespace)
415/* To work around GCC bug <https://gcc.gnu.org/PR43881>, 405/* To work around GCC bug <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43881>,
416 we enable the warning only when not optimizing. */ 406 we enable the warning only when not optimizing. */
417# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__) 407# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__)
418# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \ 408# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \
@@ -621,6 +611,7 @@ _GL_CXXALIAS_SYS (sched_yield, int, (void));
621_GL_CXXALIASWARN (sched_yield); 611_GL_CXXALIASWARN (sched_yield);
622# endif 612# endif
623#elif defined GNULIB_POSIXCHECK 613#elif defined GNULIB_POSIXCHECK
614# undef sched_yield
624# if HAVE_RAW_DECL_SCHED_YIELD 615# if HAVE_RAW_DECL_SCHED_YIELD
625_GL_WARN_ON_USE (sched_yield, "sched_yield is not portable - " 616_GL_WARN_ON_USE (sched_yield, "sched_yield is not portable - "
626 "use gnulib module sched_yield for portability"); 617 "use gnulib module sched_yield for portability");
diff --git a/gl/uchar.h b/gl/uchar.h
index abc636c5..a06ed8ab 100644
--- a/gl/uchar.h
+++ b/gl/uchar.h
@@ -204,16 +204,6 @@
204#define _GL_FUNCDECL_RPL_1(rpl_func,rettype,parameters,...) \ 204#define _GL_FUNCDECL_RPL_1(rpl_func,rettype,parameters,...) \
205 _GL_EXTERN_C_FUNC __VA_ARGS__ rettype rpl_func parameters 205 _GL_EXTERN_C_FUNC __VA_ARGS__ rettype rpl_func parameters
206 206
207/* _GL_FUNCDECL_SYS_NAME (func) expands to plain func if C++, and to
208 parenthesized func otherwise. Parenthesization is needed in C23 if
209 the function is like strchr and so is a qualifier-generic macro
210 that expands to something more complicated. */
211#ifdef __cplusplus
212# define _GL_FUNCDECL_SYS_NAME(func) func
213#else
214# define _GL_FUNCDECL_SYS_NAME(func) (func)
215#endif
216
217/* _GL_FUNCDECL_SYS (func, rettype, parameters, [attributes]); 207/* _GL_FUNCDECL_SYS (func, rettype, parameters, [attributes]);
218 declares the system function, named func, with the given prototype, 208 declares the system function, named func, with the given prototype,
219 consisting of return type, parameters, and attributes. 209 consisting of return type, parameters, and attributes.
@@ -226,7 +216,7 @@
226 _GL_FUNCDECL_SYS (posix_openpt, int, (int flags), _GL_ATTRIBUTE_NODISCARD); 216 _GL_FUNCDECL_SYS (posix_openpt, int, (int flags), _GL_ATTRIBUTE_NODISCARD);
227 */ 217 */
228#define _GL_FUNCDECL_SYS(func,rettype,parameters,...) \ 218#define _GL_FUNCDECL_SYS(func,rettype,parameters,...) \
229 _GL_EXTERN_C_FUNC __VA_ARGS__ rettype _GL_FUNCDECL_SYS_NAME (func) parameters 219 _GL_EXTERN_C_FUNC __VA_ARGS__ rettype func parameters
230 220
231/* _GL_CXXALIAS_RPL (func, rettype, parameters); 221/* _GL_CXXALIAS_RPL (func, rettype, parameters);
232 declares a C++ alias called GNULIB_NAMESPACE::func 222 declares a C++ alias called GNULIB_NAMESPACE::func
@@ -397,7 +387,7 @@
397 _GL_CXXALIASWARN_1 (func, GNULIB_NAMESPACE) 387 _GL_CXXALIASWARN_1 (func, GNULIB_NAMESPACE)
398# define _GL_CXXALIASWARN_1(func,namespace) \ 388# define _GL_CXXALIASWARN_1(func,namespace) \
399 _GL_CXXALIASWARN_2 (func, namespace) 389 _GL_CXXALIASWARN_2 (func, namespace)
400/* To work around GCC bug <https://gcc.gnu.org/PR43881>, 390/* To work around GCC bug <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43881>,
401 we enable the warning only when not optimizing. */ 391 we enable the warning only when not optimizing. */
402# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__) 392# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__)
403# define _GL_CXXALIASWARN_2(func,namespace) \ 393# define _GL_CXXALIASWARN_2(func,namespace) \
@@ -425,7 +415,7 @@
425 GNULIB_NAMESPACE) 415 GNULIB_NAMESPACE)
426# define _GL_CXXALIASWARN1_1(func,rettype,parameters_and_attributes,namespace) \ 416# define _GL_CXXALIASWARN1_1(func,rettype,parameters_and_attributes,namespace) \
427 _GL_CXXALIASWARN1_2 (func, rettype, parameters_and_attributes, namespace) 417 _GL_CXXALIASWARN1_2 (func, rettype, parameters_and_attributes, namespace)
428/* To work around GCC bug <https://gcc.gnu.org/PR43881>, 418/* To work around GCC bug <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43881>,
429 we enable the warning only when not optimizing. */ 419 we enable the warning only when not optimizing. */
430# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__) 420# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__)
431# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \ 421# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \
@@ -1037,6 +1027,7 @@ _GL_CXXALIAS_SYS (c32rtomb, size_t, (char *s, char32_t wc, mbstate_t *ps));
1037_GL_CXXALIASWARN (c32rtomb); 1027_GL_CXXALIASWARN (c32rtomb);
1038# endif 1028# endif
1039#elif defined GNULIB_POSIXCHECK 1029#elif defined GNULIB_POSIXCHECK
1030# undef c32rtomb
1040# if HAVE_RAW_DECL_C32RTOMB 1031# if HAVE_RAW_DECL_C32RTOMB
1041_GL_WARN_ON_USE (c32rtomb, "c32rtomb is not portable - " 1032_GL_WARN_ON_USE (c32rtomb, "c32rtomb is not portable - "
1042 "use gnulib module c32rtomb for portability"); 1033 "use gnulib module c32rtomb for portability");
@@ -1193,6 +1184,7 @@ _GL_CXXALIAS_SYS (mbrtoc32, size_t,
1193_GL_CXXALIASWARN (mbrtoc32); 1184_GL_CXXALIASWARN (mbrtoc32);
1194# endif 1185# endif
1195#elif defined GNULIB_POSIXCHECK 1186#elif defined GNULIB_POSIXCHECK
1187# undef mbrtoc32
1196# if HAVE_RAW_DECL_MBRTOC32 1188# if HAVE_RAW_DECL_MBRTOC32
1197_GL_WARN_ON_USE (mbrtoc32, "mbrtoc32 is not portable - " 1189_GL_WARN_ON_USE (mbrtoc32, "mbrtoc32 is not portable - "
1198 "use gnulib module mbrtoc32 for portability"); 1190 "use gnulib module mbrtoc32 for portability");
@@ -1224,6 +1216,7 @@ _GL_CXXALIAS_SYS (mbrtoc16, size_t,
1224_GL_CXXALIASWARN (mbrtoc16); 1216_GL_CXXALIASWARN (mbrtoc16);
1225# endif 1217# endif
1226#elif defined GNULIB_POSIXCHECK 1218#elif defined GNULIB_POSIXCHECK
1219# undef mbrtoc16
1227# if HAVE_RAW_DECL_MBRTOC16 1220# if HAVE_RAW_DECL_MBRTOC16
1228_GL_WARN_ON_USE (mbrtoc16, "mbrtoc16 is not portable - " 1221_GL_WARN_ON_USE (mbrtoc16, "mbrtoc16 is not portable - "
1229 "use gnulib module mbrtoc16 for portability"); 1222 "use gnulib module mbrtoc16 for portability");