+ fprintf(stderr, "[%d]", s->nr);
+ s = s->right;
+ if(s) fprintf(stderr, " ");
+ else fprintf(stderr, "\n");
+ }
+}
+void actlist_verify(actlist_t*a, int32_t y)
+{
+ segment_t*s = a->list;
+ assert(!s || !s->left);
+ segment_t*l = 0;
+ while(s) {
+ if(y) {
+ if(l) {
+ /* we need to re-evaluate the x of the previous segment. if we
+ try to store it, it might end up being converted to a double,
+ which will make it non-equal to (and possibly larger than) the
+ "long double" the FPU has in it's register. This only happens
+ when compiler optimizations are turned on. */
+ assert((XPOS(s, y) - XPOS(l, y)) >= 0);
+ assert(XDIFF(s,l,y) >= 0);
+ }
+ l = s;
+ }