Update lex and ls.

This commit is contained in:
Serge
2022-05-27 17:47:38 -07:00
parent c213981071
commit 27ddb2eef0
6 changed files with 100 additions and 100 deletions

View File

@@ -57,49 +57,49 @@
typedef unsigned size_t;
#endif
void abort (void);
int abs (int);
int atexit (void (*)(void));
int atoi (const char *);
long atol (const char *);
void *calloc (size_t, size_t);
void exit (int);
void free (void *);
char *getenv (const char *);
long labs (long);
void *malloc (size_t);
char *mktemp (char *);
int mkstemp (char *);
void qsort (void *, size_t, size_t, int (*)(const void *, const void *));
int rand (void);
void *realloc (void*, size_t);
void srand (unsigned);
long strtol (const char *, char **, int);
unsigned long strtoul (const char *, char **, int);
int system (const char *);
void abort(void);
int abs(int);
int atexit(void (*)(void));
int atoi(const char *);
long atol(const char *);
void *calloc(size_t, size_t);
void exit(int);
void free(void *);
char *getenv(const char *);
long labs(long);
void *malloc(size_t);
char *mktemp(char *);
int mkstemp(char *);
void qsort(void *, size_t, size_t, int (*)(const void *, const void *));
int rand(void);
void *realloc(void*, size_t);
void srand(unsigned);
long strtol(const char *, char **, int);
unsigned long strtoul(const char *, char **, int);
int system(const char *);
int putenv (char *string);
int setenv (const char *name, const char *value, int overwrite);
int unsetenv (const char *name);
char *_findenv (const char *name, int *offset);
int putenv(char *string);
int setenv(const char *name, const char *value, int overwrite);
int unsetenv(const char *name);
char *_findenv(const char *name, int *offset);
void *alloca (size_t size);
void *alloca(size_t size);
int daemon (int, int);
char *devname (int dev, int type);
int getloadavg (unsigned loadavg[], int nelem);
int daemon(int, int);
char *devname(int dev, int type);
int getloadavg(unsigned loadavg[], int nelem);
extern char *suboptarg; /* getsubopt(3) external variable */
int getsubopt (char **, char **, char **);
int getsubopt(char **, char **, char **);
long random (void);
char *setstate (char *);
void srandom (unsigned);
long random(void);
char *setstate(char *);
void srandom(unsigned);
double atof (const char *);
double strtod (const char *, char **);
char *ecvt (double, int, int *, int *);
char *fcvt (double, int, int *, int *);
char *gcvt (double, int, char *);
double atof(const char *);
double strtod(const char *, char **);
char *ecvt(double, int, int *, int *);
char *fcvt(double, int, int *, int *);
char *gcvt(double, int, char *);
#endif /* _STDLIB_H_ */

View File

@@ -131,9 +131,9 @@ sp = schar = myalloc(STARTCHAR,sizeof(*schar));
error("Too little core to begin");
}
free1core(){
cfree(def,DEFSIZE,sizeof(*def));
cfree(subs,DEFSIZE,sizeof(*subs));
cfree(dchar,DEFCHAR,sizeof(*dchar));
free(def);
free(subs);
free(dchar);
}
get2core(){
register int i, val;
@@ -154,18 +154,18 @@ nxtpos = positions = (int *) myalloc(maxpos,sizeof(*positions));
for(i=0;i<=tptr;i++)foll[i] = 0;
}
free2core(){
cfree(positions,maxpos,sizeof(*positions));
cfree(tmpstat,tptr+1,sizeof(*tmpstat));
cfree(foll,tptr+1,sizeof(*foll));
cfree(name,treesize,sizeof(*name));
cfree(left,treesize,sizeof(*left));
cfree(right,treesize,sizeof(*right));
cfree(parent,treesize,sizeof(*parent));
cfree(nullstr,treesize,sizeof(*nullstr));
cfree(state,nstates,sizeof(*state));
cfree(sname,STARTSIZE,sizeof(*sname));
cfree(schar,STARTCHAR,sizeof(*schar));
cfree(ccl,CCLSIZE,sizeof(*ccl));
free(positions);
free(tmpstat);
free(foll);
free(name);
free(left);
free(right);
free(parent);
free(nullstr);
free(state);
free(sname);
free(schar);
free(ccl);
}
get3core(){
register int i, val;
@@ -178,15 +178,15 @@ get3core(){
}
# ifdef DEBUG
free3core(){
cfree(advance,outsize,sizeof(*advance));
cfree(verify,outsize,sizeof(*verify));
cfree(stoff,stnum+1,sizeof(*stoff));
cfree(gotof,nstates,sizeof(*gotof));
cfree(nexts,ntrans,sizeof(*nexts));
cfree(nchar,ntrans,sizeof(*nchar));
cfree(atable,nstates,sizeof(*atable));
cfree(sfall,nstates,sizeof(*sfall));
cfree(cpackflg,nstates,sizeof(*cpackflg));
free(advance);
free(verify);
free(stoff);
free(gotof);
free(nexts);
free(nchar);
free(atable);
free(sfall);
free(cpackflg);
}
# endif
char *myalloc(a,b)

View File

@@ -22,7 +22,7 @@ int g;
char *p;
%}
acc : lexinput
={
={
# ifdef DEBUG
if(debug) sect2dump();
# endif
@@ -245,7 +245,7 @@ yylex(){
if(c == 0)
error("Too little core for parse tree");
p = c;
cfree(p,i,1);
free(p);
name = myalloc(treesize,sizeof(*name));
left = myalloc(treesize,sizeof(*left));
right = myalloc(treesize,sizeof(*right));
@@ -294,7 +294,7 @@ yylex(){
case 'k': case 'K': /* overriden packed char classes */
while (*p && !digit(*p))p++;
if (report==2) report=1;
cfree(pchar, pchlen, sizeof(*pchar));
free(pchar);
pchlen = siconv(p);
# ifdef DEBUG
if (debug) printf( "Size classes (%%k) now %d\n",pchlen);

View File

@@ -783,13 +783,13 @@ layout(){
fprintf(fout, "define YYTOPVAL %d\n", yytop);
rprint(verify,"verif",yytop+1);
rprint(advance,"advan",yytop+1);
shiftr(stoff, stnum);
shiftr(stoff, stnum);
rprint(stoff,"stoff",stnum+1);
shiftr(sfall, stnum); upone(sfall, stnum+1);
shiftr(sfall, stnum); upone(sfall, stnum+1);
rprint(sfall,"sfall",stnum+1);
bprint(extra,"extra",casecount+1);
bprint(match,"match",NCH);
shiftr(atable, stnum);
shiftr(atable, stnum);
rprint(atable,"atable",stnum+1);
return;
}
@@ -862,7 +862,7 @@ layout(){
fprintf(fout, "0%-3o,",fbarr[i+j]);
putc('\n',fout);
}
cfree(fbarr, 2*NCH, 1);
free(fbarr);
}
fprintf(fout,"0};\n");
}

View File

@@ -18,6 +18,7 @@
#include <sgtty.h>
#include <string.h>
#include <sys/time.h>
#include <unistd.h>
#define kbytes(size) (((size) + 1023) / 1024)
@@ -53,15 +54,24 @@ char *dotp = ".";
struct winsize win;
int twidth;
struct afile *gstat();
int fcmp();
char *cat(), *savestr();
char *fmtentry();
char *getname(), *getgroup();
char *flags_to_string (unsigned flags, char *def);
unsigned string_to_flags (char **stringp, unsigned *setp, unsigned *clrp);
void formatf(struct afile *fp0, struct afile *fplast);
struct afile *gstat(struct afile *fp, char *file, int statarg, long *pnb);
int fcmp(const void *a, const void *b);
void formatd(char *name, int dotitle);
long getdir(char *dir, struct afile **pfp0, struct afile **pfplast, int *isadir);
char *savestr(char *str);
char *cat(char *dir, char *file);
char *fmtentry(struct afile *fp, int maxflags);
char *fmtinum(struct afile *p);
char *fmtsize(struct afile *p);
char *fmtlstuff(struct afile *p, int maxflags);
char *getname(uid_t uid);
char *getgroup(gid_t gid);
char *fmtmode(char *lp, int flags);
int
main(argc, argv)
int argc;
char *argv[];
@@ -71,7 +81,6 @@ main(argc, argv)
register struct afile *fp;
struct sgttyb sgbuf;
int ch, i;
time_t time();
Aflg = !getuid();
(void) time(&now); sixmonthsago = now - 6L*30L*24L*60L*60L; now += 60;
@@ -161,7 +170,7 @@ main(argc, argv)
}
fp0 = fp;
for (i = 0; i < argc; i++) {
if (gstat(fp, *argv, 1, (int *)0)) {
if (gstat(fp, *argv, 1, (long *)0)) {
fp->fname = *argv;
fp->fmode |= ISARG;
fp++;
@@ -195,8 +204,8 @@ main(argc, argv)
t = subdirs; subdirs = t->sd_next;
putchar('\n');
formatd(t->sd_name, 1);
cfree(t->sd_name);
cfree((char *)t);
free(t->sd_name);
free((char *)t);
}
if (++fp == fplast)
break;
@@ -206,6 +215,7 @@ main(argc, argv)
exit(0);
}
void
formatd(name, dotitle)
char *name;
int dotitle;
@@ -214,7 +224,7 @@ formatd(name, dotitle)
register struct subdirs *dp;
struct afile *dfp0, *dfplast;
int isadir;
long nkb, getdir();
long nkb;
nkb = getdir(name, &dfp0, &dfplast, &isadir);
if (dfp0 == 0)
@@ -238,11 +248,11 @@ formatd(name, dotitle)
}
for (fp = dfp0; fp < dfplast; fp++) {
if ((fp->fmode&ISARG) == 0 && fp->fname)
cfree(fp->fname);
free(fp->fname);
if (fp->flinkto)
cfree(fp->flinkto);
free(fp->flinkto);
}
cfree((char *)dfp0);
free((char *)dfp0);
}
long
@@ -272,7 +282,7 @@ getdir(dir, pfp0, pfplast, isadir)
fp = *pfp0 = (struct afile *)calloc(nent, sizeof (struct afile));
*pfplast = *pfp0 + nent;
nb = 0;
while (dp = readdir(dirp)) {
while ((dp = readdir(dirp))) {
if (dp->d_ino == 0)
continue;
if (aflg == 0 && dp->d_name[0]=='.' &&
@@ -301,8 +311,6 @@ getdir(dir, pfp0, pfplast, isadir)
return (kbytes (nb * DEV_BSIZE));
}
int stat(), lstat();
struct afile *
gstat(fp, file, statarg, pnb)
register struct afile *fp;
@@ -377,6 +385,7 @@ gstat(fp, file, statarg, pnb)
return (fp);
}
void
formatf(fp0, fplast)
struct afile *fp0, *fplast;
{
@@ -437,9 +446,11 @@ formatf(fp0, fplast)
}
}
fcmp(f1, f2)
register struct afile *f1, *f2;
int
fcmp(const void *a, const void *b)
{
const struct afile *f1 = a;
const struct afile *f2 = b;
if (dflg == 0 && fflg == 0) {
if ((f1->fmode&ISARG) && f1->ftype == 'd') {
@@ -493,12 +504,10 @@ savestr(str)
return(cp);
}
char *fmtinum(), *fmtsize(), *fmtlstuff(), *fmtmode();
char *
fmtentry(fp, maxflags)
register struct afile *fp;
int maxflags;
register struct afile *fp;
int maxflags;
{
static char fmtres[BUFSIZ];
register char *cp, *dp;

View File

@@ -17,12 +17,3 @@ calloc(num, size)
bzero(p, size);
return (p);
}
void
cfree(p, num, size)
char *p;
unsigned num;
unsigned size;
{
free(p);
}