char *xxxvers
[] = "\n@(#) FORTRAN 77 PASS 1, VERSION 2.10, 16 AUGUST 1980\n";
#define DONE(c) { retcode = c; goto finis; }
signal(SIGFPE
, flovflo
); /* catch overflows */
ldfps(01200); /* trap on overflow */
while(argc
>0 && argv
[0][0]=='-')
for(s
= argv
[0]+1 ; *s
; ++s
) switch(*s
)
if(s
[1]=='6' && s
[2]=='6')
warn1("-O%d: too many register variables", k
);
ip
= &maxequiv
; goto getnum
;
ip
= &maxext
; goto getnum
;
ip
= &maxstno
; goto getnum
;
ip
= &maxctl
; goto getnum
;
ip
= &maxhash
; goto getnum
;
fatali("invalid flag -N%c", *s
);
fatal("Table size too small");
fatali("invalid flag -I%c\n", *s
);
fatali("invalid flag %c\n", *s
);
fatali("arg count %d", argc
);
if(inilex( copys(argv
[0]) ))
fprintf(diagfile
, "%s:\n", argv
[0]);
for(s
= argv
[0] ; ; s
+= 8)
fprintf(diagfile
, "Bad parse, return code %d\n", k
);
warn("missing END statement");
if( fp
= fopen(fn
, "w") )
fatalstr("cannot open intermediate file %s", fn
);
if(p
!=NULL
&& *p
!=NULL
&& *p
!=stdout
)
err("floating exception during constant evaluation");
fatal("vax cannot recover from floating exception");
/* vax returns a reserved operand that generates
an illegal operand fault on next instruction,
which if ignored causes an infinite loop.