Re: [PATCH] getitimer.2: Use restrict in prototypes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Alex,

On Wed, 3 Feb 2021 at 20:45, Alejandro Colomar <alx.manpages@xxxxxxxxx> wrote:
>
> POSIX specifies that the 2nd and 3rd parameters to setitimer()
> shall be 'restrict'.  Glibc uses 'restrict' too.
> Let's use it here too.

I'm not against this change. But, as we know, 'restrict' is not used
at all so far in the SYNOPSIS sections of the manual pages. DO you
have an overall plan here?

Thanks,

Michael

> ......
>
> .../glibc$ grep_syscall_wrapper setitimer
> time/sys/time.h:129:
> extern int setitimer (__itimer_which_t __which,
>                       const struct itimerval *__restrict __new,
>                       struct itimerval *__restrict __old) __THROW;
> .../glibc$
>
> function grep_syscall_wrapper()
> {
>         if ! [ -v 1 ]; then
>                 >&2 echo "Usage: ${FUNCNAME[0]} <syscall>";
>                 return ${EX_USAGE};
>         fi
>
>         find * -type f \
>         |grep '\.h$' \
>         |sort -V \
>         |xargs pcregrep -Mn \
>           "^[^\s][\w\s]+\s+\**${1}\s*\((?s)[\w\s()[\]*,]*?(...)?\)[\w\s()]*;" \
>         |sed -E 's/^[^:]+:[0-9]+:/&\n/';
> }
>
> Signed-off-by: Alejandro Colomar <alx.manpages@xxxxxxxxx>
> ---
>  man2/getitimer.2 | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/man2/getitimer.2 b/man2/getitimer.2
> index b435c343e..9ec32e836 100644
> --- a/man2/getitimer.2
> +++ b/man2/getitimer.2
> @@ -18,8 +18,8 @@ getitimer, setitimer \- get or set value of an interval timer
>  .B #include <sys/time.h>
>  .PP
>  .BI "int getitimer(int " which ", struct itimerval *" curr_value );
> -.BI "int setitimer(int " which ", const struct itimerval *" new_value ,
> -.BI "              struct itimerval *" old_value );
> +.BI "int setitimer(int " which ", const struct itimerval *restrict " new_value ,
> +.BI "              struct itimerval *restrict " old_value );
>  .fi
>  .SH DESCRIPTION
>  These system calls provide access to interval timers, that is,
> --
> 2.30.0
>


-- 
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/



[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux