"function","subroutine","common","dimension","block","integer",
"real","data","double",0};
"sys","mov","tst","clr","jmp",0};
"int","char","float","double","struct","extern",0};
"globl","byte","even","text","data","bss","comm",0};
if(stat(file
, mbuf
) < 0) {
printf(" special (%d/%d)\n",
in
= read(ibuf
[0], buf
, 512);
printf("pure executable\n");
printf("separate executable\n");
if(ccom() == 0)goto notc
;
if(ccom() == 0)goto notc
;
while((ch
= buf
[i
++]) != ';' && ch
!= '{')if(i
>= in
)goto notc
;
while(buf
[i
] == 'c' || buf
[i
] == '#'){
while(buf
[i
++] != '\n')if(i
>= in
)goto notfort
;
if(ascom() == 0)goto notas
;
printf("assembler program");
printf("roff, nroff, or eqn input");
if(ascom() == 0)goto notas
;
while(buf
[i
] != '\n' && buf
[i
++] != ':')
while(buf
[i
] == '\n' || buf
[i
] == ' ' || buf
[i
] == '\t')if(i
++ >= in
)goto notas
;
printf("assembler program");
printf("roff, nroff, or eqn input");
printf("assembler program");
for(i
=0; i
< in
; i
++)if(buf
[i
] <= 0){
if((mbuf
[2] & 00111) != 0)
else printf("probably text");
printf(" with garbage\n");
while((in
= read(ibuf
[0],buf
,512)) > 0)
printf(" with garbage\n");
while(buf
[i
] == ' ' || buf
[i
] == '\t' || buf
[i
] == '\n')i
++;
for(j
=0; tab
[j
] != 0; j
++){
for(k
=i
; ((r
=tab
[j
][l
++]) == buf
[k
] && r
!= '\0');k
++);
if(buf
[k
] == ' ' || buf
[k
] == '\n' || buf
[k
] == '\t'
|| buf
[k
] == '{' || buf
[k
] == '/'){
while((cc
= buf
[i
]) == ' ' || cc
== '\t' || cc
== '\n')if(i
++ >= in
)return(0);
if(buf
[i
] == '/' && buf
[i
+1] == '*'){
while(buf
[i
] != '*' || buf
[i
+1] != '/'){
if(buf
[i
] == '\\')i
=+ 2;
if((i
=+ 2) >= in
)return(0);
if(buf
[i
] == '\n')if(ccom() == 0)return(0);
while(buf
[i
++] != '\n')if(i
>= in
)return(0);
while(buf
[i
] == '\n')if(i
++ >= in
)return(0);