#define	rsts	1
#include <stdio.h>
#include <rsts.h>

fclose(fp)
FILE *fp;
{
    if (fp == stderr) {
	return(-1);
    }
    if ($$luns[fp->io_lun - 1] == fp) {
        mfree(fp->io_bbuf);
	$$ferr = 0;
	if (fp->io_flag & IO_OPN) {
	    fflush(fp);
	    $dclos(fp);
	}
	$$fero($$ferr, fp);
	if ($$ferr) {
	    return(-1);
	}
	else {
	    return(0);
	}
    }
    return(-1);
}

$dclos(fp)
FILE *fp;
{
    clrfqx();
    firqb.fqfun	= CLSFQ;
    firqb.fqfil	= fp->io_lun * 2;
    $$ferr = rstsys(CALFIP);
}
