Object_Id : 89
Title : Bison parser skeleton replacment with builtin error repair
Node_Type : Production
Format : text
Address : file:/home2/foster/tools/ErrorRepair.tar.gz
Keywords : Yacc
Abstract : This is a replacement for the bison.simple grammar skeleton
with builtin error-repairing mechanisms which use the
tables built by bison to replace and delete symbols as
appropriate to recover from errors encountered.
No change is required to any grammars in order to use this
code. The code is supplied with grammars for both C and
I tested the program with the following buggy C program:
int main(int argc, char *argv[))
int i = 0;
i += 1;
and received the following result:
io <916> C test.c
YYERROR: Parse error on ')': line 2 col 31
YYERROR: yytext=`)' symbol was (41)
Recovery: ( 0.01) Inserted ']' and deleted ')'
YYERROR: Parse error on '}', expecting `$': line 9 col 2
YYERROR: yytext=`}' symbol was (125)
Recovery: ( 0.00) Inserted nothing and deleted '}'
which I believe is brilliant for no extra effort ;)
Date_Entry_Created : 18/10/96
Entry_Created_By : Paul Foster
Asset_Qualification : excellent
Other_Opinions : It's glorious!!!!
Contact_Person : Paul Foster (foster@citr)
IP_or_Copyright_Owner : Corey Yeatman, Bruce McKenzie, Lorraine de Vere - University
of Canterbury, N.Z
Usage_Conditions : This software is released under the GPL.
Bison output since version 2.4 is able to be used
in commercial products.
Authors_and_Contributors: Corey Yeatman,
Lorraine de Vere
(University of Canterbury, N.Z)
Projects_Used_In : None
Obtained_From : http://kaka.cosc.canterbury.ac.nz/~bruce/ErrorRepair.html
Code_Type : simple tool
Programming_Language : C
Portations : SunOS
It should run on whatever
platform bison does.
Source_Location : file:/home2/foster/tools/ErrorRepair.tar.gz
to return to the Repository home page.