Commit a9767a15 authored by POTTIER Francois's avatar POTTIER Francois
Browse files

Merge branch 'master' of

parents 9a1c5eec ac0d635b
......@@ -89,3 +89,26 @@ Produire des tables. Voir
Approche de Bison,
Error recovery:
See my journal at Dec 7, 2015.
"Comparison of Syntactic Error Handling in LR Parsers" (Degano & Priami, 1995)
"Natural and Flexible Error Recovery for Generated Modular Language Environments" (de Jonge et al., 2012)
Error recovery in a GLR parser; indentation-aware.
See also "Natural and Flexible Error Recovery for Generated Parsers",
available as a 2009 technical report
Philippe Charles's PhD thesis
Burke-Fisher-style error recovery (
"On parsing and condensing substrings of LR languages in linear time" (Heiko Goeman, 2001)
Reportedly fixes mistakes in Bates and Lavie's paper (1994).
Roehrich (1980).
......@@ -799,6 +799,9 @@ module Make (T : TABLE) = struct
if not (T.may_reduce env.current prod) then
invalid_arg "force_reduction: this reduction is not permitted in this state"
else begin
(* We do not expose the start productions to the user, so this cannot be
a start production. Hence, it has a semantic action. *)
assert (not (T.is_start prod));
(* Invoke the semantic action. *)
let stack = T.semantic_action prod env in
(* Perform a goto transition. *)
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment