Related articles |
---|
Error recovery and LR(1)/LALR(1) heng@Ag.arizona.edu (Heng Yuan) (2002-06-17) |
Re: Error recovery and LR(1)/LALR(1) gvcormac@uwaterloo.ca (Gordon V Cormack) (2002-06-20) |
Re: Error recovery and LR(1)/LALR(1) kgw-news@stiscan.com (2002-06-20) |
Error recovery and LR(1)/LALR(1) cfc@world.std.com (Chris F Clark) (2002-06-20) |
Re: Error recovery and LR(1)/LALR(1) soenke.kannapinn@wincor-nixdorf.com (=?Windows-1252?Q?S=F6nke_Kannapinn?=) (2002-06-28) |
From: | "Heng Yuan" <heng@Ag.arizona.edu> |
Newsgroups: | comp.compilers |
Date: | 17 Jun 2002 00:13:11 -0400 |
Organization: | The University of Arizona |
Keywords: | parse, LALR, question |
Posted-Date: | 17 Jun 2002 00:13:11 EDT |
Hi,
I am in the process of writing an LR(1)/LALR(1) parser generator called
YooParse, which will be used with YooLex, a C++ lexer generator. While I
successfully generated the LR(1)/LALR(1) DFA states, I encountered
problems dealing with error states. This is a long post.
Situation 1:
For example, a DFA state contains the following LR(1) items
A -> alpha X . , lookahead = 'a'
B -> beta X . gamma , lookahead = 'b'
My question is really what to do if the lookahead is neither 'a'
or 'b'? Should A be reduced?
Situation 2:
For example, a DFA state contains the following LR(1) items
A -> alpha X . , lookahead = 'a'
B -> beta X . , lookahead = 'b'
What if the lookahead is neither 'a' nor 'b'? Do I assume default
transitions on A since the rule for A preceeds B?
My concern is the loss of chance of early recovery.
Thanks
Heng Yuan
heng@ag.arizona.edu
Return to the
comp.compilers page.
Search the
comp.compilers archives again.