Bug 192266

Summary: np_temp omitted from {SLIST,STAILQ,TAILQ} section examples in queue(3)
Product: Documentation Reporter: Enji Cooper <ngie>
Component: Manual PagesAssignee: freebsd-bugs (Nobody) <bugs>
Status: New ---    
Severity: Affects Some People CC: diego.casati, doc
Priority: ---    
Version: Latest   
Hardware: Any   
OS: Any   

Description Enji Cooper freebsd_committer 2014-07-30 04:58:49 UTC
The LIST section example notes np_temp, but implies np_temp's existence in the {SLIST,STAILQ,TAILQ} sections.
Comment 1 Diego Casati 2016-12-14 22:50:10 UTC
Hi --

Is this ticket still valid? I've compared what's on sys/queue.h with queue.3 and did not find the discrepancies noted by the user.

queue.h defines these functions:

#define SLIST_FOREACH_SAFE(var, head, field, tvar)                      \
#define SLIST_FOREACH_FROM_SAFE(var, head, field, tvar)                 \
#define STAILQ_FOREACH_SAFE(var, head, field, tvar)                     \
#define STAILQ_FOREACH_FROM_SAFE(var, head, field, tvar)                \
#define LIST_FOREACH_SAFE(var, head, field, tvar)                       \
#define LIST_FOREACH_FROM_SAFE(var, head, field, tvar)                  \
#define TAILQ_FOREACH_SAFE(var, head, field, tvar)                      \
#define TAILQ_FOREACH_FROM_SAFE(var, head, field, tvar)                 \
#define TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, tvar)    \
#define TAILQ_FOREACH_REVERSE_FROM_SAFE(var, head, headname, field, tvar) \

Every example on queue.3 that uses these functions do make a reference to tvar (declared as np_temp on the man page).

SLIST_FOREACH_SAFE(np, &head, entries, np_temp) {
STAILQ_FOREACH_SAFE(np, &head, entries, np_temp) {
LIST_FOREACH_SAFE(np, &head, entries, np_temp) {
TAILQ_FOREACH_SAFE(np, &head, entries, np_temp) {


Did I miss anything ? 

thanks,

-dcasati