* src/state.h (state_t): `solved_conflicts' is a new member.

* src/LR0.c (new_state): Set it to 0.
* src/conflicts.h, src/conflicts.c (print_conflicts)
(free_conflicts, solve_conflicts): Rename as...
(conflicts_print, conflicts_free, conflicts_solve): these.
Adjust callers.
* src/conflicts.c (enum conflict_resolution_e)
(solved_conflicts_obstack): New, used by...
(log_resolution): this.
Adjust to attach the conflict resolution to each state.
Complete the description with the precedence/associativity
information.
(resolve_sr_conflict): Adjust.
* src/print.c (print_state): Output its solved_conflicts.
* tests/conflicts.at (Unresolved SR Conflicts)
(Solved SR Conflicts): Exercise --report=all.
This commit is contained in:
Akim Demaille
2002-05-26 20:25:52 +00:00
parent a49aecd528
commit b408954b40
12 changed files with 159 additions and 53 deletions

13
NEWS
View File

@@ -73,7 +73,7 @@ Changes in version 1.49b:
* Semantic parser
This old option, which has been broken for ages, is removed.
* New translations
* New translation
Croatian, thanks to Denis Lackovic.
* Incorrect token definitions
@@ -87,9 +87,14 @@ Changes in version 1.49b:
* Reports
In addition to --verbose, bison supports --report=THINGS, which
produces additional information:
`itemset' complete the core item sets with their closure
`lookahead' explicitly associate lookaheads to items
- itemset
complete the core item sets with their closure
- lookahead
explicitly associate lookaheads to items
- solved
describe shift/reduce conflicts solving.
Bison used to systematically output this information on top of
the report. Solved conflicts are now attached to their states.
Changes in version 1.35, 2002-03-25: