let do_recover parser_of_tree entry nlevn alevn loc a s son
                               (__strm : _ Stream.t) =
                  try
                    parser_of_tree entry nlevn alevn (top_tree entry son)
                      __strm
                  with
                  | Stream.Failure ->
                      (try skip_if_empty loc __strm
                       with
                       | Stream.Failure ->
                           continue entry loc a s son
                             (parser_of_tree entry nlevn alevn son) __strm)