+2001-11-19 Akim Demaille <akim@epita.fr>
+
+ * src/bison.simple (yyparse): When reporting verbosely an error,
+ no longer issue additional quotes around token names.
+ * tests/calc.at: Adjust.
+
2001-11-19 Akim Demaille <akim@epita.fr>
* src/symtab.h, src/symtab.c: `line' is a new member of `bucket'.
int x, count;
count = 0;
- /* Start X at -yyn if nec to avoid negative indexes in yycheck. */
- for (x = (yyn < 0 ? -yyn : 0);
+ /* Start X at -YYN if negative to avoid negative indexes in
+ YYCHECK. */
+ for (x = yyn < 0 ? -yyn : 0;
x < (int) (sizeof (yytname) / sizeof (char *)); x++)
if (yycheck[x + yyn] == x)
size += strlen (yytname[x]) + 15, count++;
- size += strlen ("parse error, unexpected `") + 1;
+ size += strlen ("parse error, unexpected ") + 1;
size += strlen (yytname[YYTRANSLATE (yychar)]);
msg = (char *) malloc (size);
if (msg != 0)
{
- strcpy (msg, "parse error, unexpected `");
+ strcpy (msg, "parse error, unexpected ");
strcat (msg, yytname[YYTRANSLATE (yychar)]);
- strcat (msg, "'");
if (count < 5)
{
count = 0;
- for (x = (yyn < 0 ? -yyn : 0);
+ for (x = yyn < 0 ? -yyn : 0;
x < (int) (sizeof (yytname) / sizeof (char *)); x++)
if (yycheck[x + yyn] == x)
{
- strcat (msg, count == 0 ? ", expecting `" : " or `");
+ strcat (msg, count == 0 ? ", expecting " : " or ");
strcat (msg, yytname[x]);
- strcat (msg, "'");
count++;
}
}
free (msg);
}
else
- yyerror ("parse error; also virtual memory exceeded");
+ yyerror ("parse error; also virtual memory exhausted");
}
else
#endif /* YYERROR_VERBOSE */
# Some parse errors.
_AT_CHECK_CALC_ERROR([$1], [+1], [8],
[1.0:1.1],
- [unexpected `'+''])
+ [unexpected '+'])
_AT_CHECK_CALC_ERROR([$1], [1//2], [17],
[1.2:1.3],
- [unexpected `'/'', expecting `NUM' or `'-'' or `'(''])
+ [unexpected '/', expecting NUM or '-' or '('])
_AT_CHECK_CALC_ERROR([$1], [error], [8],
[1.0:1.1],
- [unexpected `$undefined.'])
+ [unexpected $undefined.])
_AT_CHECK_CALC_ERROR([$1], [1 = 2 = 3], [23],
[1.6:1.7],
- [unexpected `'=''])
+ [unexpected '='])
_AT_CHECK_CALC_ERROR([$1],
[
+1],
[16],
[2.0:2.1],
- [unexpected `'+''])
+ [unexpected '+'])
AT_CLEANUP
])# AT_CHECK_CALC