Re: [PATCH v2] EXIT_SUCCESS.3const EXIT_FAILURE.3const: Add pages

Alejandro Colomar
2022-11-17T00:19:16Z

[-- Attachment #1.1: Type: text/plain, Size: 2859 bytes --]

Hi Thomas,

On 11/17/22 01:14, Thomas Voss wrote:
> Signed-off-by: Thomas Voss <mail@thomasvoss.com>
> ---
>> Being "constant expressions of type int" is is true of most constants in C, so
>> I think I'd skip it.
>
> I think it's pretty obvious to most people, but the manual doesn't have too much
> to say so it's not exactly taking up any space and I don't think it hurts to
> mention, but it also doesn't matter too much :P. Here's a v2 with the changes
> you pointed out.
>
> man3const/EXIT_FAILURE.3const | 1 +
> man3const/EXIT_SUCCESS.3const | 59 +++++++++++++++++++++++++++++++++++
> 2 files changed, 60 insertions(+)
> create mode 100644 man3const/EXIT_FAILURE.3const
> create mode 100644 man3const/EXIT_SUCCESS.3const
>
> diff --git a/man3const/EXIT_FAILURE.3const b/man3const/EXIT_FAILURE.3const
> new file mode 100644
> index 000000000..ba0d62df9
> --- /dev/null
> +++ b/man3const/EXIT_FAILURE.3const
> @@ -0,0 +1 @@
> +.so man3const/EXIT_SUCCESS.3const
> diff --git a/man3const/EXIT_SUCCESS.3const b/man3const/EXIT_SUCCESS.3const
> new file mode 100644
> index 000000000..f125afb32
> --- /dev/null
> +++ b/man3const/EXIT_SUCCESS.3const
> @@ -0,0 +1,59 @@
> +.\" Copyright (c) 2022 by Thomas Voss <mail@thomasvoss.com>
> +.\"
> +.\" SPDX-License-Identifier: Linux-man-pages-copyleft
> +.\"
> +.\"
> +.TH EXIT_SUCCESS 3const (date) "Linux man-pages (unreleased)"
> +.SH NAME
> +EXIT_SUCCESS, EXIT_FAILURE \- termination status constants
> +.SH LIBRARY
> +Standard C library
> +.RI ( libc )
> +.SH SYNOPSIS
> +.nf
> +.B #include <stdlib.h>
> +.PP
> +.BR "#define EXIT_SUCCESS " 0

I prefer 2 spaces between the macro name and the expansion, so please one more
space before the quote.

> +.BR "#define EXIT_FAILURE " /* nonzero */

"/* nonzero */" needs to be quoted too.

> +.fi
> +.SH DESCRIPTION
> +.B EXIT_SUCCESS
> +and
> +.B EXIT_FAILURE
> +represent a successful and unsuccessful exit status respectively and can be used
> +as arguments to the
> +.BR exit ()

.BR exit (3)

> +function.
> +.SH CONFORMING TO
> +C99 and later;
> +POSIX.1-2001 and later.
> +.SH EXAMPLES
> +.\" SRC BEGIN (EXIT_SUCCESS.c)
> +.EX
> +#include <stdio.h>
> +#include <stdlib.h>
> +
> +int
> +main(int argc, char *argv[])
> +{
> + FILE *fp;
> +
> + if (argc != 2) {
> + fprintf(stderr, "Usage: %s <file>\en", argv[0]);
> + exit(EXIT_FAILURE);
> + }
> +
> + if ((fp = fopen(argv[1], "r")) == NULL) {
> + perror(argv[1]);
> + exit(EXIT_FAILURE);
> + }
> +
> + /* Other code omitted */
> +
> + fclose(fp);
> + exit(EXIT_SUCCESS);
> +}
> +.EE
> +.\" SRC END
> +.SH SEE ALSO
> +.BR exit (3)

Also interesting:

.BR sysexits.h (3head)

Cheers,

Alex