Re: [PATCH 11/24] stat.2: Remove unneeded cast

From: Michael Kerrisk (man-pages)
Date: Fri Sep 11 2020 - 03:25:18 EST


On 9/10/20 11:13 PM, Alejandro Colomar wrote:
> Both major(3) and minor(3) return an 'unsigned int',
> so there is no need to use a 'long' for printing.
> Moreover, it should have been 'unsigned long',
> as "%lx" expects an unsigned type.

See my reply to patch 10/24.

Thanks,

Michael

> Signed-off-by: Alejandro Colomar <colomar.6.4.3@xxxxxxxxx>
> ---
> man2/stat.2 | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/man2/stat.2 b/man2/stat.2
> index b35e3c615..3418e1b5d 100644
> --- a/man2/stat.2
> +++ b/man2/stat.2
> @@ -664,8 +664,8 @@ main(int argc, char *argv[])
> exit(EXIT_FAILURE);
> }
>
> - printf("ID of containing device: [%lx,%lx]\en",
> - (long) major(sb.st_dev), (long) minor(sb.st_dev));
> + printf("ID of containing device: [%x,%x]\en",
> + major(sb.st_dev), minor(sb.st_dev));
>
> printf("File type: ");
>
>


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