We previously maintained a set of individual productions that were involved in conflicts, but that was subtly incorrect because we don't compare productions themselves when comparing parse items; we only compare the parse items properties that could affect the final reduce actions. |
||
|---|---|---|
| .. | ||
| anonymous_tokens_with_escaped_chars | ||
| associativity_left | ||
| associativity_missing | ||
| associativity_right | ||
| conflicting_precedence | ||
| dynamic_precedence | ||
| epsilon_rules | ||
| external_and_internal_anonymous_tokens | ||
| external_and_internal_tokens | ||
| external_extra_tokens | ||
| external_tokens | ||
| inline_rules | ||
| inlined_renamed_rules | ||
| lexical_conflicts_due_to_state_merging | ||
| nested_inlined_rules | ||
| precedence_on_single_child_missing | ||
| precedence_on_single_child_negative | ||
| precedence_on_single_child_positive | ||
| precedence_on_subsequence | ||
| readme_grammar | ||
| renamed_inlined_rules | ||
| renamed_rules | ||
| start_rule_is_blank | ||
| start_rule_is_token | ||
| unused_rules | ||
| readme.md | ||
These small grammars demonstrate specific features or test for certain specific regressions.
For some of them, compilation is expected to fail with a given error message. For others, the resulting parser is expected to produce certain trees.