Allow for cumulative -V flags.

This commit is contained in:
ceriel 1987-04-10 18:03:12 +00:00
parent 5fbe427853
commit ecf8a9b28f

View file

@ -31,7 +31,6 @@ int toterr;
int parent; int parent;
char *eeflag; char *eeflag;
char *vvflag = "-V";
int no_pemflag = 0 ; int no_pemflag = 0 ;
char *pemflag[MAX_FLAG]; char *pemflag[MAX_FLAG];
char *eflag; char *eflag;
@ -146,7 +145,7 @@ char *flag(f) char *f; {
wflag = f; wflag = f;
break; break;
case 'V': case 'V':
vvflag = f; initsizes(f+2);
return(0); return(0);
case '{': case '{':
if ( no_pemflag>=MAX_FLAG ) { if ( no_pemflag>=MAX_FLAG ) {
@ -169,11 +168,10 @@ char *flag(f) char *f; {
return(0); return(0);
} }
initsizes(f) FILE *f; { initsizes(vvflag) char *vvflag; {
register c, i; register c, i;
register char *p; register char *p = vvflag;
p = vvflag + 2;
while (c = *p++) { while (c = *p++) {
i = atoi(p); i = atoi(p);
while (*p >= '0' && *p <= '9') while (*p >= '0' && *p <= '9')
@ -196,10 +194,6 @@ initsizes(f) FILE *f; {
(sz_long != 4)) { (sz_long != 4)) {
fatal("bad V-flag %s",vvflag); fatal("bad V-flag %s",vvflag);
} }
if (sz_head == 0)
sz_head = 6*sz_word + 2*sz_addr;
for (i = 0; i <= sz_last; i++)
fprintf(f, "%d\n",sizes[i]);
} }
/* ------------------ calling sequences -------------------- */ /* ------------------ calling sequences -------------------- */
@ -214,7 +208,10 @@ pem(p,q) char *p,*q; {
d = tempfile('d'); d = tempfile('d');
if ((erfil = fopen(d,"w")) == NULL) if ((erfil = fopen(d,"w")) == NULL)
syserr(d); syserr(d);
initsizes(erfil); if (sz_head == 0)
sz_head = 6*sz_word + 2*sz_addr;
for (i = 0; i <= sz_last; i++)
fprintf(erfil, "%d\n",sizes[i]);
fprintf(erfil,"%s\n",basename(source)); fprintf(erfil,"%s\n",basename(source));
for ( i=0 ; i<no_pemflag ; i++ ) fprintf(erfil,"%s\n",pemflag[i]); for ( i=0 ; i<no_pemflag ; i++ ) fprintf(erfil,"%s\n",pemflag[i]);
fclose(erfil); fclose(erfil);