From 9f80f9e34af5323a8c40075195bf376ae91f0473 Mon Sep 17 00:00:00 2001 From: Alejandro Colomar Date: Mon, 15 Feb 2021 17:32:37 +0100 Subject: [PATCH] simpleq.3, stailq.3, queue.7, SIMPLEQ_*.3: Document SIMPLEQ_*() as an alias to STAILQ_*() macros Signed-off-by: Alejandro Colomar Signed-off-by: Michael Kerrisk --- 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 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 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),