Fix some comments concerning LR(0) versus LALR(1).

Stop equating LR(0) with nondeterminism and LALR(1) with
determinism.  That is, if all states are consistent, then LR(0)
tables are deterministic.  On the other hand, LALR(1) tables
might be nondeterministic before conflict resolution, and GLR
permits LALR(1) tables to remain nondeterministic.
* src/LR0.c, src/LR0.h: Here.
* src/lalr.c, src/lalr.h: Here.
* src/main.c (main): Here.
* src/state.c, src/state.h: Here.

* src/ielr.h (ielr): In preconditions, expect LR(0) not LALR(1)
parser tables.
(cherry picked from commit 1c4ad777cb)
This commit is contained in:
Joel E. Denny
2010-01-04 14:13:43 -05:00
parent e141f4d4bb
commit fca9c5eff1
9 changed files with 32 additions and 17 deletions

View File

@@ -1,4 +1,4 @@
/* Generate the nondeterministic finite state machine for Bison.
/* Generate the LR(0) parser states for Bison.
Copyright (C) 1984, 1986, 1989, 2000-2002, 2004-2010 Free Software
Foundation, Inc.
@@ -328,8 +328,8 @@ set_states (void)
/*-------------------------------------------------------------------.
| Compute the nondeterministic finite state machine (see state.h for |
| details) from the grammar. |
| Compute the LR(0) parser states (see state.h for details) from the |
| grammar. |
`-------------------------------------------------------------------*/
void