The branch main has been updated by shurd:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=415a0ce02c9ee2c15c7973b2dfbddda71f6344a2

commit 415a0ce02c9ee2c15c7973b2dfbddda71f6344a2
Author:     Stephen Hurd <sh...@freebsd.org>
AuthorDate: 2025-03-20 07:15:15 +0000
Commit:     Stephen Hurd <sh...@freebsd.org>
CommitDate: 2025-03-20 07:41:27 +0000

    Revert Make newly POSIX functions visible
    
    Summary:
    This reverts commit d7efac1be1441c122f7fb9de51a409172f21326c.
    This reverts commit 9d0eea9422d075c8a6924b33161d2d5abfb4072a.
    
    Some ports (specifically Python) define __BSD_VISIBLE themselves, so
    the change from __BSD_VISIBLE to __POSIX_VISIBLE >= 202405 makes them
    fail.
    
    Reported by:    jrtc27, cperciva
---
 include/dlfcn.h  |  8 +-------
 include/stdlib.h | 13 +++++--------
 include/string.h |  6 +++---
 include/time.h   |  8 +++-----
 include/unistd.h | 16 ++++++----------
 include/wchar.h  |  7 ++-----
 6 files changed, 20 insertions(+), 38 deletions(-)

diff --git a/include/dlfcn.h b/include/dlfcn.h
index ec4ad14b5091..89ec43b332e9 100644
--- a/include/dlfcn.h
+++ b/include/dlfcn.h
@@ -80,9 +80,6 @@ typedef       struct dl_info {
        const char      *dli_sname;     /* Name of nearest symbol. */
        void            *dli_saddr;     /* Address of nearest symbol. */
 } Dl_info;
-#if __POSIX_VISIBLE >= 202405
-typedef struct dl_info Dl_info_t;
-#endif
 
 /*-
  * The actual type declared by this typedef is immaterial, provided that
@@ -122,12 +119,9 @@ char       *dlerror(void);
 void   *dlopen(const char *, int);
 void   *dlsym(void * __restrict, const char * __restrict);
 
-#if __POSIX_VISIBLE >= 202405
-int     dladdr(const void * __restrict, Dl_info * __restrict);
-#endif
-
 #if __BSD_VISIBLE
 void   *fdlopen(int, int);
+int     dladdr(const void * __restrict, Dl_info * __restrict);
 dlfunc_t dlfunc(void * __restrict, const char * __restrict);
 int     dlinfo(void * __restrict, int, void * __restrict);
 void    dllockinit(void *_context,
diff --git a/include/stdlib.h b/include/stdlib.h
index 449b17fefff5..162031ab393d 100644
--- a/include/stdlib.h
+++ b/include/stdlib.h
@@ -157,7 +157,7 @@ _Noreturn void       _Exit(int) __noexcept;
 /*
  * If we're in a mode greater than C99, expose C11 functions.
  */
-#if __ISO_C_VISIBLE >= 2011 || __cplusplus >= 201103L || __POSIX_VISIBLE >= 
202405
+#if __ISO_C_VISIBLE >= 2011 || __cplusplus >= 201103L
 void * aligned_alloc(size_t, size_t) __malloc_like __alloc_align(1)
            __alloc_size(2);
 int    at_quick_exit(void (*)(void)) __noexcept;
@@ -236,13 +236,6 @@ int         unlockpt(int);
 int     ptsname_r(int, char *, size_t);
 #endif
 
-#if __POSIX_VISIBLE >= 202405
-void    qsort_r(void *, size_t, size_t,
-           int (*)(const void *, const void *, void *), void *);
-void   *reallocarray(void *, size_t, size_t) __result_use_check
-           __alloc_size2(2, 3);
-#endif
-
 #if __BSD_VISIBLE
 extern const char *malloc_conf;
 extern void (*malloc_message)(void *, const char *);
@@ -312,8 +305,12 @@ int         mergesort_b(void *, size_t, size_t, int 
(^)(const void *, const void *));
 int     mkostemp(char *, int);
 int     mkostemps(char *, int, int);
 int     mkostempsat(int, char *, int, int);
+void    qsort_r(void *, size_t, size_t,
+           int (*)(const void *, const void *, void *), void *);
 int     radixsort(const unsigned char **, int, const unsigned char *,
            unsigned);
+void   *reallocarray(void *, size_t, size_t) __result_use_check
+           __alloc_size2(2, 3);
 void   *reallocf(void *, size_t) __result_use_check __alloc_size(2);
 int     rpmatch(const char *);
 char   *secure_getenv(const char *);
diff --git a/include/string.h b/include/string.h
index 3deca63bd71a..a3fa96ebb449 100644
--- a/include/string.h
+++ b/include/string.h
@@ -63,8 +63,8 @@ void  *memrchr(const void *, int, size_t) __pure;
 #endif
 int     memcmp(const void *, const void *, size_t) __pure;
 void   *(memcpy)(void * __restrict, const void * __restrict, size_t);
-#if __POSIX_VISIBLE >= 202405
-void   *(memmem)(const void *, size_t, const void *, size_t) __pure;
+#if __BSD_VISIBLE
+void   *memmem(const void *, size_t, const void *, size_t) __pure;
 #endif
 void   *(memmove)(void *, const void *, size_t);
 #if __BSD_VISIBLE
@@ -98,7 +98,7 @@ char  *strerror(int);
 #if __POSIX_VISIBLE >= 200112
 int     strerror_r(int, char *, size_t);
 #endif
-#if __POSIX_VISIBLE >= 202405
+#if __BSD_VISIBLE
 size_t  (strlcat)(char * __restrict, const char * __restrict, size_t);
 size_t  (strlcpy)(char * __restrict, const char * __restrict, size_t);
 #endif
diff --git a/include/time.h b/include/time.h
index e011792aaaeb..89a76ca5fd93 100644
--- a/include/time.h
+++ b/include/time.h
@@ -180,17 +180,15 @@ time_t posix2time(time_t t);
 #include <xlocale/_time.h>
 #endif
 
-#if __ISO_C_VISIBLE >= 2011 || __POSIX_VISIBLE >= 202405 || \
+#if __BSD_VISIBLE || __ISO_C_VISIBLE >= 2011 || \
     (defined(__cplusplus) && __cplusplus >= 201703)
 #include <sys/_timespec.h>
 /* ISO/IEC 9899:2011 7.27.2.5 The timespec_get function */
 #define TIME_UTC       1       /* time elapsed since epoch */
-#if __ISO_C_VISIBLE >= 2023 || __POSIX_VISIBLE >= 202405
-/* ISO/IEC 9899:2024 7.29.1 Components of time */
-#define TIME_MONOTONIC 2       /* monotonic time */
-#endif
 int timespec_get(struct timespec *ts, int base);
 #if __BSD_VISIBLE || __ISO_C_VISIBLE >= 2023
+/* ISO/IEC 9899:2024 7.29.1 Components of time */
+#define TIME_MONOTONIC 2       /* monotonic time */
 /* ISO/IEC 9899:2024 7.29.2.7 The timespec_getres function */
 int timespec_getres(struct timespec *, int);
 #endif
diff --git a/include/unistd.h b/include/unistd.h
index 3a4e1be192d9..8574b2ba9915 100644
--- a/include/unistd.h
+++ b/include/unistd.h
@@ -483,16 +483,6 @@ int         usleep(useconds_t);
 pid_t   vfork(void) __returns_twice;
 #endif
 
-/* 1003.1-2024 */
-#if __POSIX_VISIBLE >= 202405
-pid_t   _Fork(void);
-int     getentropy(void *, size_t);
-int     getresgid(gid_t *, gid_t *, gid_t *);
-int     getresuid(uid_t *, uid_t *, uid_t *);
-int     setresgid(gid_t, gid_t, gid_t);
-int     setresuid(uid_t, uid_t, uid_t);
-#endif
-
 #if __BSD_VISIBLE
 struct timeval;                                /* select(2) */
 
@@ -520,11 +510,14 @@ int        feature_present(const char *);
 int     fchroot(int);
 char   *fflagstostr(u_long);
 int     getdomainname(char *, int);
+int     getentropy(void *, size_t);
 int     getgrouplist(const char *, gid_t, gid_t *, int *);
 int     getloginclass(char *, size_t);
 mode_t  getmode(const void *, mode_t);
 int     getosreldate(void);
 int     getpeereid(int, uid_t *, gid_t *);
+int     getresgid(gid_t *, gid_t *, gid_t *);
+int     getresuid(uid_t *, uid_t *, uid_t *);
 char   *getusershell(void);
 int     initgroups(const char *, gid_t);
 int     iruserok(unsigned long, int, const char *, const char *);
@@ -582,6 +575,8 @@ void        *setmode(const char *);
 int     setpgrp(pid_t, pid_t);                 /* obsoleted by setpgid() */
 void    setproctitle(const char *_fmt, ...) __printf0like(1, 2);
 void    setproctitle_fast(const char *_fmt, ...) __printf0like(1, 2);
+int     setresgid(gid_t, gid_t, gid_t);
+int     setresuid(uid_t, uid_t, uid_t);
 int     setrgid(gid_t);
 int     setruid(uid_t);
 void    setusershell(void);
@@ -594,6 +589,7 @@ int  undelete(const char *);
 int     unwhiteout(const char *);
 void   *valloc(size_t);                        /* obsoleted by malloc() */
 int     funlinkat(int, const char *, int, int);
+pid_t   _Fork(void);
 
 #ifndef _OPTRESET_DECLARED
 #define        _OPTRESET_DECLARED
diff --git a/include/wchar.h b/include/wchar.h
index a8c016c42faf..e4b037c9b16f 100644
--- a/include/wchar.h
+++ b/include/wchar.h
@@ -235,13 +235,10 @@ size_t    wcsnrtombs(char * __restrict, const wchar_t ** 
__restrict, size_t,
            size_t, mbstate_t * __restrict);
 #endif
 
-#if __POSIX_VISIBLE >= 202405
-size_t wcslcat(wchar_t *, const wchar_t *, size_t);
-size_t wcslcpy(wchar_t *, const wchar_t *, size_t);
-#endif
-
 #if __BSD_VISIBLE
 wchar_t        *fgetwln(FILE * __restrict, size_t * __restrict);
+size_t wcslcat(wchar_t *, const wchar_t *, size_t);
+size_t wcslcpy(wchar_t *, const wchar_t *, size_t);
 #endif
 
 #if __POSIX_VISIBLE >= 200809 || defined(_XLOCALE_H_)

Reply via email to