REMAIN
#define REMAIN (buf->length - (ptr - bufstart))
#undef REMAIN
#define REMAIN (buf->length - ((unsigned char *)buf->value - ptr))
#undef REMAIN
#define REMAIN (buf->length - (ptr - bufstart))
#undef REMAIN
#define REMAIN (buflen - (ptr - bufstart))
#undef REMAIN