The LIST section example notes np_temp, but implies np_temp's existence in the {SLIST,STAILQ,TAILQ} sections.
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
See bug #192267 and attachment #227599 [details]. The attachment there changes np_temp to tvar to match the macro argument name.
(In reply to Felix Johnson from comment #2) CORRECTION: See attachment #228599 [details]