fix exit status
This commit is contained in:
parent
2d98c32cb2
commit
5b50914bea
2 changed files with 7 additions and 3 deletions
|
@ -221,6 +221,8 @@ va_dcl
|
||||||
va_end(pvar);
|
va_end(pvar);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern int nerrors;
|
||||||
|
|
||||||
/*VARARGS*/
|
/*VARARGS*/
|
||||||
error(va_alist)
|
error(va_alist)
|
||||||
va_dcl
|
va_dcl
|
||||||
|
@ -228,6 +230,7 @@ va_dcl
|
||||||
char *fmt;
|
char *fmt;
|
||||||
va_list pvar;
|
va_list pvar;
|
||||||
|
|
||||||
|
nerrors++;
|
||||||
va_start(pvar);
|
va_start(pvar);
|
||||||
fmt = va_arg(pvar, char *);
|
fmt = va_arg(pvar, char *);
|
||||||
fprint( STDERR, "!! ERROR : ");
|
fprint( STDERR, "!! ERROR : ");
|
||||||
|
|
|
@ -124,21 +124,22 @@ if_statement : IF
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|
||||||
|
int nerrors;
|
||||||
static int saved = 0, token;
|
static int saved = 0, token;
|
||||||
|
|
||||||
|
|
||||||
LLmessage( inserted_token)
|
LLmessage( inserted_token)
|
||||||
int inserted_token;
|
int inserted_token;
|
||||||
{
|
{
|
||||||
|
nerrors++;
|
||||||
if ( inserted_token == 0) {
|
if ( inserted_token == 0) {
|
||||||
fprint( STDERR, "Sytax error in line %d, ", yylineno);
|
fprint( STDERR, "Sytax error in line %d, ", yylineno);
|
||||||
print_token( LLsymb);
|
print_token( LLsymb);
|
||||||
fprint( STDERR, " will be deleted!!\n");
|
fprint( STDERR, " will be deleted!!\n");
|
||||||
}
|
}
|
||||||
else if ( inserted_token < 0) {
|
else if ( inserted_token < 0) {
|
||||||
fprint( STDERR, "Stack overflow in line %d, fatal error!\n",
|
fprint( STDERR, "Garbage at end, line %d!!\n",
|
||||||
yylineno);
|
yylineno);
|
||||||
exit( 1);
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
fprint( STDERR, "Sytax error in line %d, ", yylineno);
|
fprint( STDERR, "Sytax error in line %d, ", yylineno);
|
||||||
|
@ -194,7 +195,7 @@ int lex_analyzer()
|
||||||
main()
|
main()
|
||||||
{
|
{
|
||||||
table();
|
table();
|
||||||
return( 0);
|
exit(nerrors);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue