diff options
Diffstat (limited to 'lexical.c')
-rw-r--r-- | lexical.c | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -80,14 +80,17 @@ void init_all_map(){ void PROXIMO(FILE *fp){ + if(is_EOF) return; + if(fscanf(fp, "%c", &proximo) == EOF){ is_EOF = 1; return ; } - printf("%c", proximo); if(proximo == '\n'){ + printf("\n"); PROXIMO(fp); linha++; + printf("linha %d: ", linha); } return ; @@ -114,7 +117,9 @@ char* CODIGO(char *cod){ return NULL; } -void ERRO(){ +void ERRO(int error_code){ fprintf(stderr, "Erro na linha %d\n", linha); + if(error_code == 1) fprintf(stderr, "primerio erro\n"); + else fprintf(stderr, "segundo erro\n"); exit(1); } |