_UB
_UB(fp)._base = NULL; /* no ungetc buffer */
_UB(fp)._size = 0;
_UB(fp)._size = 0;
if (_UB(fp)._base != (fp)->_ubuf) \
free((char *)_UB(fp)._base); \
_UB(fp)._base = NULL; \
#define HASUB(fp) (_UB(fp)._base != NULL)
if (fp->_r >= _UB(fp)._size && __submore(fp)) {
_UB(fp)._base = fp->_ubuf;
_UB(fp)._size = sizeof(fp->_ubuf);
if (_UB(fp)._base == fp->_ubuf) {
_UB(fp)._base = p;
_UB(fp)._size = BUFSIZ;
i = _UB(fp)._size;
p = realloc(_UB(fp)._base, (size_t)(i << 1));
_UB(fp)._base = p;
_UB(fp)._size = i << 1;
_UB(&f)._base = NULL;
_UB(&f)._base = NULL;