ABSPRI
int pri = ABSPRI (w_);
assert (("libev: watcher has invalid priority", ABSPRI (w) >= 0 && ABSPRI (w) < NUMPRI));
assert (("libev: pending watcher not on pending queue", pendings [ABSPRI (w)][w->pending - 1].w == w));
pendings [ABSPRI (w)][w->pending - 1].w = (W)&pending_w;
ANPENDING *p = pendings [ABSPRI (w_)] + pending - 1;
int active = ++idlecnt [ABSPRI (w)];
array_needsize (ev_idle *, idles [ABSPRI (w)], idlemax [ABSPRI (w)], active, EMPTY2);
idles [ABSPRI (w)][active - 1] = w;
idles [ABSPRI (w)][active - 1] = idles [ABSPRI (w)][--idlecnt [ABSPRI (w)]];
ev_active (idles [ABSPRI (w)][active - 1]) = active;