Module Name: src
Committed By: christos
Date: Mon Nov 2 14:49:07 UTC 2015
Modified Files:
src/sys/sys: queue.h
Log Message:
Use existing macros to implement TAILQ_FOREACH_REVERSE, like
TAILQ_FOREACH_REVERSE_SAFE does.
To generate a diff of this commit:
cvs rdiff -u -r1.68 -r1.69 src/sys/sys/queue.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/sys/queue.h
diff -u src/sys/sys/queue.h:1.68 src/sys/sys/queue.h:1.69
--- src/sys/sys/queue.h:1.68 Wed Nov 19 03:10:01 2014
+++ src/sys/sys/queue.h Mon Nov 2 09:49:07 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: queue.h,v 1.68 2014/11/19 08:10:01 uebayasi Exp $ */
+/* $NetBSD: queue.h,v 1.69 2015/11/02 14:49:07 christos Exp $ */
/*
* Copyright (c) 1991, 1993
@@ -421,9 +421,9 @@ struct { \
#define TAILQ_END(head) (NULL)
#define TAILQ_NEXT(elm, field) ((elm)->field.tqe_next)
#define TAILQ_LAST(head, headname) \
- (*(((struct headname *)((head)->tqh_last))->tqh_last))
+ (*(((struct headname *)(void *)((head)->tqh_last))->tqh_last))
#define TAILQ_PREV(elm, headname, field) \
- (*(((struct headname *)((elm)->field.tqe_prev))->tqh_last))
+ (*(((struct headname *)(void *)((elm)->field.tqe_prev))->tqh_last))
#define TAILQ_EMPTY(head) (TAILQ_FIRST(head) == TAILQ_END(head))
@@ -438,9 +438,9 @@ struct { \
((next) = TAILQ_NEXT(var, field), 1); (var) = (next))
#define TAILQ_FOREACH_REVERSE(var, head, headname, field) \
- for ((var) = (*(((struct headname *)((head)->tqh_last))->tqh_last));\
+ for ((var) = TAILQ_LAST((head), headname); \
(var) != TAILQ_END(head); \
- (var) = (*(((struct headname *)((var)->field.tqe_prev))->tqh_last)))
+ (var) = TAILQ_PREV((var), headname, field)
#define TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, prev) \
for ((var) = TAILQ_LAST((head), headname); \