[v3] simpleq.3, stailq.3, queue.7, SIMPLEQ_*.3: Document SIMPLEQ_*() as an alias to STAILQ_*() macros

Message ID 20210215163236.518482-1-alx.manpages@gmail.com
State New
Headers show
Series
  • [v3] simpleq.3, stailq.3, queue.7, SIMPLEQ_*.3: Document SIMPLEQ_*() as an alias to STAILQ_*() macros
Related show

Commit Message

André Almeida via Libc-alpha Feb. 15, 2021, 4:32 p.m.
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>

---

v2: Add link: simpleq.3 -> stailq.3 (for symmetry)

v3: Resend (typo in email)

---
 man3/SIMPLEQ_EMPTY.3            |  1 +
 man3/SIMPLEQ_ENTRY.3            |  1 +
 man3/SIMPLEQ_FIRST.3            |  1 +
 man3/SIMPLEQ_FOREACH.3          |  1 +
 man3/SIMPLEQ_HEAD.3             |  1 +
 man3/SIMPLEQ_HEAD_INITIALIZER.3 |  1 +
 man3/SIMPLEQ_INIT.3             |  1 +
 man3/SIMPLEQ_INSERT_AFTER.3     |  1 +
 man3/SIMPLEQ_INSERT_HEAD.3      |  1 +
 man3/SIMPLEQ_INSERT_TAIL.3      |  1 +
 man3/SIMPLEQ_NEXT.3             |  1 +
 man3/SIMPLEQ_REMOVE.3           |  1 +
 man3/SIMPLEQ_REMOVE_HEAD.3      |  1 +
 man3/simpleq.3                  |  1 +
 man3/stailq.3                   | 31 +++++++++++++++++++++++++++++++
 man7/queue.7                    |  9 +++++++++
 16 files changed, 54 insertions(+)
 create mode 100644 man3/SIMPLEQ_EMPTY.3
 create mode 100644 man3/SIMPLEQ_ENTRY.3
 create mode 100644 man3/SIMPLEQ_FIRST.3
 create mode 100644 man3/SIMPLEQ_FOREACH.3
 create mode 100644 man3/SIMPLEQ_HEAD.3
 create mode 100644 man3/SIMPLEQ_HEAD_INITIALIZER.3
 create mode 100644 man3/SIMPLEQ_INIT.3
 create mode 100644 man3/SIMPLEQ_INSERT_AFTER.3
 create mode 100644 man3/SIMPLEQ_INSERT_HEAD.3
 create mode 100644 man3/SIMPLEQ_INSERT_TAIL.3
 create mode 100644 man3/SIMPLEQ_NEXT.3
 create mode 100644 man3/SIMPLEQ_REMOVE.3
 create mode 100644 man3/SIMPLEQ_REMOVE_HEAD.3
 create mode 100644 man3/simpleq.3

-- 
2.30.0

Comments

André Almeida via Libc-alpha Feb. 15, 2021, 8:31 p.m. | #1
Hi Alex,

On 2/15/21 5:32 PM, Alejandro Colomar wrote:
> Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>

> ---

> 

> v2: Add link: simpleq.3 -> stailq.3 (for symmetry)


Thanks. Patch applied.

Cheers,

Michael

> 

> v3: Resend (typo in email)

> 

> ---

>  man3/SIMPLEQ_EMPTY.3            |  1 +

>  man3/SIMPLEQ_ENTRY.3            |  1 +

>  man3/SIMPLEQ_FIRST.3            |  1 +

>  man3/SIMPLEQ_FOREACH.3          |  1 +

>  man3/SIMPLEQ_HEAD.3             |  1 +

>  man3/SIMPLEQ_HEAD_INITIALIZER.3 |  1 +

>  man3/SIMPLEQ_INIT.3             |  1 +

>  man3/SIMPLEQ_INSERT_AFTER.3     |  1 +

>  man3/SIMPLEQ_INSERT_HEAD.3      |  1 +

>  man3/SIMPLEQ_INSERT_TAIL.3      |  1 +

>  man3/SIMPLEQ_NEXT.3             |  1 +

>  man3/SIMPLEQ_REMOVE.3           |  1 +

>  man3/SIMPLEQ_REMOVE_HEAD.3      |  1 +

>  man3/simpleq.3                  |  1 +

>  man3/stailq.3                   | 31 +++++++++++++++++++++++++++++++

>  man7/queue.7                    |  9 +++++++++

>  16 files changed, 54 insertions(+)

>  create mode 100644 man3/SIMPLEQ_EMPTY.3

>  create mode 100644 man3/SIMPLEQ_ENTRY.3

>  create mode 100644 man3/SIMPLEQ_FIRST.3

>  create mode 100644 man3/SIMPLEQ_FOREACH.3

>  create mode 100644 man3/SIMPLEQ_HEAD.3

>  create mode 100644 man3/SIMPLEQ_HEAD_INITIALIZER.3

>  create mode 100644 man3/SIMPLEQ_INIT.3

>  create mode 100644 man3/SIMPLEQ_INSERT_AFTER.3

>  create mode 100644 man3/SIMPLEQ_INSERT_HEAD.3

>  create mode 100644 man3/SIMPLEQ_INSERT_TAIL.3

>  create mode 100644 man3/SIMPLEQ_NEXT.3

>  create mode 100644 man3/SIMPLEQ_REMOVE.3

>  create mode 100644 man3/SIMPLEQ_REMOVE_HEAD.3

>  create mode 100644 man3/simpleq.3

> 

> diff --git a/man3/SIMPLEQ_EMPTY.3 b/man3/SIMPLEQ_EMPTY.3

> new file mode 100644

> index 000000000..fbb71f02c

> --- /dev/null

> +++ b/man3/SIMPLEQ_EMPTY.3

> @@ -0,0 +1 @@

> +.so man3/stailq.3

> diff --git a/man3/SIMPLEQ_ENTRY.3 b/man3/SIMPLEQ_ENTRY.3

> new file mode 100644

> index 000000000..fbb71f02c

> --- /dev/null

> +++ b/man3/SIMPLEQ_ENTRY.3

> @@ -0,0 +1 @@

> +.so man3/stailq.3

> diff --git a/man3/SIMPLEQ_FIRST.3 b/man3/SIMPLEQ_FIRST.3

> new file mode 100644

> index 000000000..fbb71f02c

> --- /dev/null

> +++ b/man3/SIMPLEQ_FIRST.3

> @@ -0,0 +1 @@

> +.so man3/stailq.3

> diff --git a/man3/SIMPLEQ_FOREACH.3 b/man3/SIMPLEQ_FOREACH.3

> new file mode 100644

> index 000000000..fbb71f02c

> --- /dev/null

> +++ b/man3/SIMPLEQ_FOREACH.3

> @@ -0,0 +1 @@

> +.so man3/stailq.3

> diff --git a/man3/SIMPLEQ_HEAD.3 b/man3/SIMPLEQ_HEAD.3

> new file mode 100644

> index 000000000..fbb71f02c

> --- /dev/null

> +++ b/man3/SIMPLEQ_HEAD.3

> @@ -0,0 +1 @@

> +.so man3/stailq.3

> diff --git a/man3/SIMPLEQ_HEAD_INITIALIZER.3 b/man3/SIMPLEQ_HEAD_INITIALIZER.3

> new file mode 100644

> index 000000000..fbb71f02c

> --- /dev/null

> +++ b/man3/SIMPLEQ_HEAD_INITIALIZER.3

> @@ -0,0 +1 @@

> +.so man3/stailq.3

> diff --git a/man3/SIMPLEQ_INIT.3 b/man3/SIMPLEQ_INIT.3

> new file mode 100644

> index 000000000..fbb71f02c

> --- /dev/null

> +++ b/man3/SIMPLEQ_INIT.3

> @@ -0,0 +1 @@

> +.so man3/stailq.3

> diff --git a/man3/SIMPLEQ_INSERT_AFTER.3 b/man3/SIMPLEQ_INSERT_AFTER.3

> new file mode 100644

> index 000000000..fbb71f02c

> --- /dev/null

> +++ b/man3/SIMPLEQ_INSERT_AFTER.3

> @@ -0,0 +1 @@

> +.so man3/stailq.3

> diff --git a/man3/SIMPLEQ_INSERT_HEAD.3 b/man3/SIMPLEQ_INSERT_HEAD.3

> new file mode 100644

> index 000000000..fbb71f02c

> --- /dev/null

> +++ b/man3/SIMPLEQ_INSERT_HEAD.3

> @@ -0,0 +1 @@

> +.so man3/stailq.3

> diff --git a/man3/SIMPLEQ_INSERT_TAIL.3 b/man3/SIMPLEQ_INSERT_TAIL.3

> new file mode 100644

> index 000000000..fbb71f02c

> --- /dev/null

> +++ b/man3/SIMPLEQ_INSERT_TAIL.3

> @@ -0,0 +1 @@

> +.so man3/stailq.3

> diff --git a/man3/SIMPLEQ_NEXT.3 b/man3/SIMPLEQ_NEXT.3

> new file mode 100644

> index 000000000..fbb71f02c

> --- /dev/null

> +++ b/man3/SIMPLEQ_NEXT.3

> @@ -0,0 +1 @@

> +.so man3/stailq.3

> diff --git a/man3/SIMPLEQ_REMOVE.3 b/man3/SIMPLEQ_REMOVE.3

> new file mode 100644

> index 000000000..fbb71f02c

> --- /dev/null

> +++ b/man3/SIMPLEQ_REMOVE.3

> @@ -0,0 +1 @@

> +.so man3/stailq.3

> diff --git a/man3/SIMPLEQ_REMOVE_HEAD.3 b/man3/SIMPLEQ_REMOVE_HEAD.3

> new file mode 100644

> index 000000000..fbb71f02c

> --- /dev/null

> +++ b/man3/SIMPLEQ_REMOVE_HEAD.3

> @@ -0,0 +1 @@

> +.so man3/stailq.3

> diff --git a/man3/simpleq.3 b/man3/simpleq.3

> new file mode 100644

> index 000000000..fbb71f02c

> --- /dev/null

> +++ b/man3/simpleq.3

> @@ -0,0 +1 @@

> +.so man3/stailq.3

> diff --git a/man3/stailq.3 b/man3/stailq.3

> index b43f9c60b..22582eeae 100644

> --- a/man3/stailq.3

> +++ b/man3/stailq.3

> @@ -31,6 +31,26 @@

>  .\"

>  .TH STAILQ 3 2020-10-21 "GNU" "Linux Programmer's Manual"

>  .SH NAME

> +.\"SIMPLEQ_CONCAT,

> +SIMPLEQ_EMPTY,

> +SIMPLEQ_ENTRY,

> +SIMPLEQ_FIRST,

> +SIMPLEQ_FOREACH,

> +.\"SIMPLEQ_FOREACH_FROM,

> +.\"SIMPLEQ_FOREACH_FROM_SAFE,

> +.\"SIMPLEQ_FOREACH_SAFE,

> +SIMPLEQ_HEAD,

> +SIMPLEQ_HEAD_INITIALIZER,

> +SIMPLEQ_INIT,

> +SIMPLEQ_INSERT_AFTER,

> +SIMPLEQ_INSERT_HEAD,

> +SIMPLEQ_INSERT_TAIL,

> +.\"SIMPLEQ_LAST,

> +SIMPLEQ_NEXT,

> +SIMPLEQ_REMOVE,

> +.\"SIMPLEQ_REMOVE_AFTER,

> +SIMPLEQ_REMOVE_HEAD,

> +.\"SIMPLEQ_SWAP,

>  STAILQ_CONCAT,

>  STAILQ_EMPTY,

>  STAILQ_ENTRY,

> @@ -96,6 +116,8 @@ STAILQ_REMOVE_HEAD,

>  .\" .BI "void STAILQ_SWAP(STAILQ_HEAD *" head1 ", STAILQ_HEAD *" head2 ,

>  .\" .BI "                          STAILQ_ENTRY " NAME );

>  .fi

> +.IR Note :

> +Identical macros prefixed with SIMPLEQ instead of STAILQ exist; see NOTES.

>  .SH DESCRIPTION

>  These macros define and operate on singly linked tail queues.

>  .PP

> @@ -299,6 +321,15 @@ fixes this limitation by allowing

>  .I var

>  to safely be removed from the list and freed from within the loop

>  without interfering with the traversal.

> +.SH NOTES

> +Some BSDs provide SIMPLEQ instead of STAILQ.

> +They are identical, but for historical reasons

> +they were named differently on different BSDs.

> +STAILQ originated on FreeBSD, and SIMPLEQ originated on NetBSD.

> +For compatibility reasons, some systems provide both sets of macros.

> +Glibc provides both STAILQ and SIMPLEQ,

> +which are identical except for a missing SIMPLEQ equivalent to

> +.BR STAILQ_CONCAT ().

>  .SH EXAMPLES

>  .EX

>  #include <stddef.h>

> diff --git a/man7/queue.7 b/man7/queue.7

> index f92887a36..c3facafd0 100644

> --- a/man7/queue.7

> +++ b/man7/queue.7

> @@ -138,6 +138,15 @@ Not in POSIX.1, POSIX.1-2001, or POSIX.1-2008.

>  Present on the BSDs.

>  .I <sys/queue.h>

>  macros first appeared in 4.4BSD.

> +.SH NOTES

> +Some BSDs provide SIMPLEQ instead of STAILQ.

> +They are identical, but for historical reasons

> +they were named differently on different BSDs.

> +STAILQ originated on FreeBSD, and SIMPLEQ originated on NetBSD.

> +For compatibility reasons, some systems provide both sets of macros.

> +Glibc provides both STAILQ and SIMPLEQ,

> +which are identical except for a missing SIMPLEQ equivalent to

> +.BR STAILQ_CONCAT ().

>  .SH SEE ALSO

>  .BR circleq (3),

>  .BR insque (3),

> 



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

Patch

diff --git a/man3/SIMPLEQ_EMPTY.3 b/man3/SIMPLEQ_EMPTY.3
new file mode 100644
index 000000000..fbb71f02c
--- /dev/null
+++ b/man3/SIMPLEQ_EMPTY.3
@@ -0,0 +1 @@ 
+.so man3/stailq.3
diff --git a/man3/SIMPLEQ_ENTRY.3 b/man3/SIMPLEQ_ENTRY.3
new file mode 100644
index 000000000..fbb71f02c
--- /dev/null
+++ b/man3/SIMPLEQ_ENTRY.3
@@ -0,0 +1 @@ 
+.so man3/stailq.3
diff --git a/man3/SIMPLEQ_FIRST.3 b/man3/SIMPLEQ_FIRST.3
new file mode 100644
index 000000000..fbb71f02c
--- /dev/null
+++ b/man3/SIMPLEQ_FIRST.3
@@ -0,0 +1 @@ 
+.so man3/stailq.3
diff --git a/man3/SIMPLEQ_FOREACH.3 b/man3/SIMPLEQ_FOREACH.3
new file mode 100644
index 000000000..fbb71f02c
--- /dev/null
+++ b/man3/SIMPLEQ_FOREACH.3
@@ -0,0 +1 @@ 
+.so man3/stailq.3
diff --git a/man3/SIMPLEQ_HEAD.3 b/man3/SIMPLEQ_HEAD.3
new file mode 100644
index 000000000..fbb71f02c
--- /dev/null
+++ b/man3/SIMPLEQ_HEAD.3
@@ -0,0 +1 @@ 
+.so man3/stailq.3
diff --git a/man3/SIMPLEQ_HEAD_INITIALIZER.3 b/man3/SIMPLEQ_HEAD_INITIALIZER.3
new file mode 100644
index 000000000..fbb71f02c
--- /dev/null
+++ b/man3/SIMPLEQ_HEAD_INITIALIZER.3
@@ -0,0 +1 @@ 
+.so man3/stailq.3
diff --git a/man3/SIMPLEQ_INIT.3 b/man3/SIMPLEQ_INIT.3
new file mode 100644
index 000000000..fbb71f02c
--- /dev/null
+++ b/man3/SIMPLEQ_INIT.3
@@ -0,0 +1 @@ 
+.so man3/stailq.3
diff --git a/man3/SIMPLEQ_INSERT_AFTER.3 b/man3/SIMPLEQ_INSERT_AFTER.3
new file mode 100644
index 000000000..fbb71f02c
--- /dev/null
+++ b/man3/SIMPLEQ_INSERT_AFTER.3
@@ -0,0 +1 @@ 
+.so man3/stailq.3
diff --git a/man3/SIMPLEQ_INSERT_HEAD.3 b/man3/SIMPLEQ_INSERT_HEAD.3
new file mode 100644
index 000000000..fbb71f02c
--- /dev/null
+++ b/man3/SIMPLEQ_INSERT_HEAD.3
@@ -0,0 +1 @@ 
+.so man3/stailq.3
diff --git a/man3/SIMPLEQ_INSERT_TAIL.3 b/man3/SIMPLEQ_INSERT_TAIL.3
new file mode 100644
index 000000000..fbb71f02c
--- /dev/null
+++ b/man3/SIMPLEQ_INSERT_TAIL.3
@@ -0,0 +1 @@ 
+.so man3/stailq.3
diff --git a/man3/SIMPLEQ_NEXT.3 b/man3/SIMPLEQ_NEXT.3
new file mode 100644
index 000000000..fbb71f02c
--- /dev/null
+++ b/man3/SIMPLEQ_NEXT.3
@@ -0,0 +1 @@ 
+.so man3/stailq.3
diff --git a/man3/SIMPLEQ_REMOVE.3 b/man3/SIMPLEQ_REMOVE.3
new file mode 100644
index 000000000..fbb71f02c
--- /dev/null
+++ b/man3/SIMPLEQ_REMOVE.3
@@ -0,0 +1 @@ 
+.so man3/stailq.3
diff --git a/man3/SIMPLEQ_REMOVE_HEAD.3 b/man3/SIMPLEQ_REMOVE_HEAD.3
new file mode 100644
index 000000000..fbb71f02c
--- /dev/null
+++ b/man3/SIMPLEQ_REMOVE_HEAD.3
@@ -0,0 +1 @@ 
+.so man3/stailq.3
diff --git a/man3/simpleq.3 b/man3/simpleq.3
new file mode 100644
index 000000000..fbb71f02c
--- /dev/null
+++ b/man3/simpleq.3
@@ -0,0 +1 @@ 
+.so man3/stailq.3
diff --git a/man3/stailq.3 b/man3/stailq.3
index b43f9c60b..22582eeae 100644
--- a/man3/stailq.3
+++ b/man3/stailq.3
@@ -31,6 +31,26 @@ 
 .\"
 .TH STAILQ 3 2020-10-21 "GNU" "Linux Programmer's Manual"
 .SH NAME
+.\"SIMPLEQ_CONCAT,
+SIMPLEQ_EMPTY,
+SIMPLEQ_ENTRY,
+SIMPLEQ_FIRST,
+SIMPLEQ_FOREACH,
+.\"SIMPLEQ_FOREACH_FROM,
+.\"SIMPLEQ_FOREACH_FROM_SAFE,
+.\"SIMPLEQ_FOREACH_SAFE,
+SIMPLEQ_HEAD,
+SIMPLEQ_HEAD_INITIALIZER,
+SIMPLEQ_INIT,
+SIMPLEQ_INSERT_AFTER,
+SIMPLEQ_INSERT_HEAD,
+SIMPLEQ_INSERT_TAIL,
+.\"SIMPLEQ_LAST,
+SIMPLEQ_NEXT,
+SIMPLEQ_REMOVE,
+.\"SIMPLEQ_REMOVE_AFTER,
+SIMPLEQ_REMOVE_HEAD,
+.\"SIMPLEQ_SWAP,
 STAILQ_CONCAT,
 STAILQ_EMPTY,
 STAILQ_ENTRY,
@@ -96,6 +116,8 @@  STAILQ_REMOVE_HEAD,
 .\" .BI "void STAILQ_SWAP(STAILQ_HEAD *" head1 ", STAILQ_HEAD *" head2 ,
 .\" .BI "                          STAILQ_ENTRY " NAME );
 .fi
+.IR Note :
+Identical macros prefixed with SIMPLEQ instead of STAILQ exist; see NOTES.
 .SH DESCRIPTION
 These macros define and operate on singly linked tail queues.
 .PP
@@ -299,6 +321,15 @@  fixes this limitation by allowing
 .I var
 to safely be removed from the list and freed from within the loop
 without interfering with the traversal.
+.SH NOTES
+Some BSDs provide SIMPLEQ instead of STAILQ.
+They are identical, but for historical reasons
+they were named differently on different BSDs.
+STAILQ originated on FreeBSD, and SIMPLEQ originated on NetBSD.
+For compatibility reasons, some systems provide both sets of macros.
+Glibc provides both STAILQ and SIMPLEQ,
+which are identical except for a missing SIMPLEQ equivalent to
+.BR STAILQ_CONCAT ().
 .SH EXAMPLES
 .EX
 #include <stddef.h>
diff --git a/man7/queue.7 b/man7/queue.7
index f92887a36..c3facafd0 100644
--- a/man7/queue.7
+++ b/man7/queue.7
@@ -138,6 +138,15 @@  Not in POSIX.1, POSIX.1-2001, or POSIX.1-2008.
 Present on the BSDs.
 .I <sys/queue.h>
 macros first appeared in 4.4BSD.
+.SH NOTES
+Some BSDs provide SIMPLEQ instead of STAILQ.
+They are identical, but for historical reasons
+they were named differently on different BSDs.
+STAILQ originated on FreeBSD, and SIMPLEQ originated on NetBSD.
+For compatibility reasons, some systems provide both sets of macros.
+Glibc provides both STAILQ and SIMPLEQ,
+which are identical except for a missing SIMPLEQ equivalent to
+.BR STAILQ_CONCAT ().
 .SH SEE ALSO
 .BR circleq (3),
 .BR insque (3),