Skip to content

Commit

Permalink
Expose POSIX functions incorporated into C23
Browse files Browse the repository at this point in the history
C23 has incoporated a small number of POSIX functions, so these
should be exposed for C23, regardless of POSIX.

Reviewed by:	imp, emaste
Differential Revision:	https://reviews.freebsd.org/D47856

(cherry picked from commit 59677ae)
  • Loading branch information
stephen-hurd committed Jan 18, 2025
1 parent 45d1cff commit 9e659ec
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 3 deletions.
8 changes: 5 additions & 3 deletions include/string.h
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ typedef __size_t size_t;
#endif

__BEGIN_DECLS
#if __XSI_VISIBLE >= 600
#if __XSI_VISIBLE >= 600 || __ISO_C_VISIBLE >= 2023
void *memccpy(void * __restrict, const void * __restrict, int, size_t);
#endif
void *memchr(const void *, int, size_t) __pure;
Expand Down Expand Up @@ -86,7 +86,7 @@ int strcmp(const char *, const char *) __pure;
int strcoll(const char *, const char *);
char *strcpy(char * __restrict, const char * __restrict);
size_t strcspn(const char *, const char *) __pure;
#if __POSIX_VISIBLE >= 200112 || __XSI_VISIBLE
#if __POSIX_VISIBLE >= 200112 || __XSI_VISIBLE || __ISO_C_VISIBLE >= 2023
char *strdup(const char *) __malloc_like;
#endif
char *strerror(int);
Expand All @@ -104,8 +104,10 @@ void strmode(int, char *);
char *strncat(char * __restrict, const char * __restrict, size_t);
int strncmp(const char *, const char *, size_t) __pure;
char *strncpy(char * __restrict, const char * __restrict, size_t);
#if __POSIX_VISIBLE >= 200809
#if __POSIX_VISIBLE >= 200809 || __ISO_C_VISIBLE >= 2023
char *strndup(const char *, size_t) __malloc_like;
#endif
#if __POSIX_VISIBLE >= 200809
size_t strnlen(const char *, size_t) __pure;
#endif
#if __BSD_VISIBLE
Expand Down
2 changes: 2 additions & 0 deletions include/time.h
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,8 @@ int clock_nanosleep(clockid_t, int, const struct timespec *, struct timespec *);
#if __POSIX_VISIBLE >= 199506
char *asctime_r(const struct tm *, char *);
char *ctime_r(const time_t *, char *);
#endif
#if __POSIX_VISIBLE >= 199506 || __ISO_C_VISIBLE >= 2023
struct tm *gmtime_r(const time_t *, struct tm *);
struct tm *localtime_r(const time_t *, struct tm *);
#endif
Expand Down

0 comments on commit 9e659ec

Please sign in to comment.