ARB_RIGHTIDX
|| ARB_RIGHTIDX(ctd64, ctdlnk) !=
ARB_RIGHTIDX(ctd64, ctdlnk),
#define ARB_RIGHT(head, elm, field) ARB_NODE(head, ARB_RIGHTIDX(elm, field))
#define ARB_NEXTFREEIDX(elm, field) ARB_RIGHTIDX(elm, field)
ARB_LEFTIDX(elm, field) = ARB_RIGHTIDX(elm, field) = ARB_NULLIDX; \
__typeof(ARB_RIGHTIDX(elm, field)) _tmpidx; \
_tmpidx = ARB_RIGHTIDX(elm, field); \
ARB_RIGHTIDX(elm, field) = ARB_LEFTIDX(tmp, field); \
if (ARB_RIGHTIDX(elm, field) != ARB_NULLIDX) { \
ARB_RIGHTIDX(ARB_PARENT(head, elm, field), \
ARB_LEFTIDX(elm, field) = ARB_RIGHTIDX(tmp, field); \
ARB_RIGHTIDX(ARB_PARENT(head, elm, field), \
ARB_RIGHTIDX(tmp, field) = ARB_SELFIDX(head, elm); \
ARB_RIGHTIDX(parent, field) = \
ARB_RIGHTIDX(ARB_PARENT(head, old, field),\
ARB_RIGHTIDX(parent, field) = \
ARB_RIGHTIDX(parent, field) = \
ARB_RIGHTIDX(parent, field) == ARB_SELFIDX(head, elm))) \