d: add yyerrok

In D's case, yyerrok() is a private method of the Parser class.
It can be called directly as `yyerrok()` from the grammar rules section.

* data/skeletons/lalr1.d: Add yyerrok().
* examples/d/calc/calc.y, examples/d/simple/calc.y: Demonstrate yyerrok().
* tests/calc.at: Update D tests to use yyerrok().
This commit is contained in:
Adela Vais
2020-11-06 17:18:04 +02:00
committed by Akim Demaille
parent d49da0101a
commit abf5f7f90e
4 changed files with 8 additions and 3 deletions

View File

@@ -307,6 +307,11 @@ b4_user_union_members
private static immutable YYSemanticType yy_semantic_null;])[
private int yyerrstatus_ = 0;
private void yyerrok()
{
yyerrstatus_ = 0;
}
/**
* Whether error recovery is being done. In this state, the parser
* reads token until it reaches a known state, and then restarts normal