exception Syntax_error of ((int * int) option * string) let get_lexing_position lexbuf = let p = Lexing.lexeme_start_p lexbuf in let line_number = p.Lexing.pos_lnum in let column = p.Lexing.pos_cnum - p.Lexing.pos_bol + 1 in (line_number, column) let default default_value opt = match opt with | None -> default_value | Some value -> value