]> granicus.if.org Git - libevent/commitdiff
Add some checks since lack of TAILQ_FOREACH doesn't imply lack of FIRST,
authorKevin Bowling <kevin.bowling@kev009.com>
Tue, 23 Nov 2010 07:22:01 +0000 (00:22 -0700)
committerNick Mathewson <nickm@torproject.org>
Wed, 24 Nov 2010 03:23:31 +0000 (22:23 -0500)
END, NEXT, or INSERT_BEFORE.  Quiet some warnings in XL C.

event-internal.h

index 50e1e4d2165da431cf670062215c90864e2376f8..e3da33da724ed8ac21f68b30931ee00682d19e3e 100644 (file)
@@ -293,19 +293,29 @@ struct event_config {
 
 /* Internal use only: Functions that might be missing from <sys/queue.h> */
 #if defined(_EVENT_HAVE_SYS_QUEUE_H) && !defined(_EVENT_HAVE_TAILQFOREACH)
+#ifndef TAILQ_FIRST
 #define        TAILQ_FIRST(head)               ((head)->tqh_first)
+#endif
+#ifndef TAILQ_END
 #define        TAILQ_END(head)                 NULL
+#endif
+#ifndef TAILQ_NEXT
 #define        TAILQ_NEXT(elm, field)          ((elm)->field.tqe_next)
+#endif
+
 #define TAILQ_FOREACH(var, head, field)                                        \
        for ((var) = TAILQ_FIRST(head);                                 \
             (var) != TAILQ_END(head);                                  \
             (var) = TAILQ_NEXT(var, field))
+
+#ifndef TAILQ_INSERT_BEFORE
 #define        TAILQ_INSERT_BEFORE(listelm, elm, field) do {                   \
        (elm)->field.tqe_prev = (listelm)->field.tqe_prev;              \
        (elm)->field.tqe_next = (listelm);                              \
        *(listelm)->field.tqe_prev = (elm);                             \
        (listelm)->field.tqe_prev = &(elm)->field.tqe_next;             \
 } while (0)
+#endif
 #endif /* TAILQ_FOREACH */
 
 #define N_ACTIVE_CALLBACKS(base)                                       \