src/lib/queue.c
BQUEUE *qdchain(BQUEUE *qitem)
{
#define qi ((BQUEUE *)qitem)

        ASSERT(qi->qprev->qnext == qi);
        ASSERT(qi->qnext->qprev == qi);

        return qremove(qi->qprev);
#undef qi
}
/*  QDCHAIN  --  Dequeue an item from the middle of a queue.  Passed
                 the queue item, returns the (now dechained) queue item. */
QDCHAIN  --  Dequeue an item from the middle of a queue.  Passed
the queue item, returns the (now dechained) queue item.
QDCHAIN -- Dequeue an item from the middle of a queue . Passed the queue item returns the ( now dechained ) queue item .
BQUEUE *qdchain(BQUEUE *qitem)
{
#define qi ((BQUEUE *)qitem)
        ASSERT(qi->qprev->qnext == qi);
        ASSERT(qi->qnext->qprev == qi);
        return qremove(qi->qprev);
#undef qi
}
BQUEUE * qdchain ( BQUEUE * qitem ) { #define qi  ((BQUEUE *)qitem) ASSERT ( qi -> qprev -> qnext == qi ) ; ASSERT ( qi -> qnext -> qprev == qi ) ; return qremove ( qi -> qprev ) ; #undef  qi }
QDCHAIN  --  Dequeue an item from the middle of a queue.
QDCHAIN -- Dequeue an item from the middle of a queue .