From: Alejandro Colomar Date: Wed, 20 Oct 2021 15:46:20 +0000 (+0200) Subject: ctime.3: SYNOPSIS: Use VLA notation for [as]ctime_r() buffer X-Git-Tag: man-pages-6.00~65 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=bd99e6b7c19384728cf41478e7142f9bcada0a2c;p=thirdparty%2Fman-pages.git ctime.3: SYNOPSIS: Use VLA notation for [as]ctime_r() buffer As N2417 (a proposal for C2x that was not accepted) suggests. This syntax is very informative, and also, if used by library implementers, can improve static analysis. Since it is backwards compatible with pointer syntax, we can do this. Also, the reason for not being accepted, as Jens noted, was incompatibility with C++. But IMO, that's not something that we should care too much. Users of other languages should know what to expect when reading C code, and are expected to know C/C++ incompatibilities. Signed-off-by: Alejandro Colomar Cc: Jens Gustedt Cc: Glibc --- diff --git a/man3/ctime.3 b/man3/ctime.3 index 8b48c928be..1424c6baa8 100644 --- a/man3/ctime.3 +++ b/man3/ctime.3 @@ -24,10 +24,12 @@ Standard C library .B #include .PP .BI "char *asctime(const struct tm *" tm ); -.BI "char *asctime_r(const struct tm *restrict " tm ", char *restrict " buf ); +.BI "char *asctime_r(const struct tm *restrict " tm , +.BI " char " buf "[restrict 26]);" .PP .BI "char *ctime(const time_t *" timep ); -.BI "char *ctime_r(const time_t *restrict " timep ", char *restrict " buf ); +.BI "char *ctime_r(const time_t *restrict " timep , +.BI " char " buf "[restrict 26]);" .PP .BI "struct tm *gmtime(const time_t *" timep ); .BI "struct tm *gmtime_r(const time_t *restrict " timep ,