Fixed lexer rule for literal naturals. Fixed reset_buffer (offset).
This commit is contained in:
parent
b361f71845
commit
669945d4f3
@ -53,10 +53,9 @@ let reset_line ~line buffer =
|
|||||||
|
|
||||||
let reset_offset ~offset buffer =
|
let reset_offset ~offset buffer =
|
||||||
assert (offset >= 0);
|
assert (offset >= 0);
|
||||||
Printf.printf "[reset] offset=%i\n" offset;
|
|
||||||
let open Lexing in
|
let open Lexing in
|
||||||
let bol = buffer.lex_curr_p.pos_bol in
|
let bol = buffer.lex_curr_p.pos_bol in
|
||||||
buffer.lex_curr_p <- {buffer.lex_curr_p with pos_cnum = bol (*+ offset*)}
|
buffer.lex_curr_p <- {buffer.lex_curr_p with pos_cnum = bol + offset }
|
||||||
|
|
||||||
let reset ?file ?line ?offset buffer =
|
let reset ?file ?line ?offset buffer =
|
||||||
let () =
|
let () =
|
||||||
@ -490,7 +489,7 @@ and scan state = parse
|
|||||||
| ident { mk_ident state lexbuf |> enqueue }
|
| ident { mk_ident state lexbuf |> enqueue }
|
||||||
| constr { mk_constr state lexbuf |> enqueue }
|
| constr { mk_constr state lexbuf |> enqueue }
|
||||||
| bytes { (mk_bytes seq) state lexbuf |> enqueue }
|
| bytes { (mk_bytes seq) state lexbuf |> enqueue }
|
||||||
| integer 'n' { mk_nat state lexbuf |> enqueue }
|
| natural 'n' { mk_nat state lexbuf |> enqueue }
|
||||||
| integer { mk_int state lexbuf |> enqueue }
|
| integer { mk_int state lexbuf |> enqueue }
|
||||||
| symbol { mk_sym state lexbuf |> enqueue }
|
| symbol { mk_sym state lexbuf |> enqueue }
|
||||||
| eof { mk_eof state lexbuf |> enqueue }
|
| eof { mk_eof state lexbuf |> enqueue }
|
||||||
|
Loading…
Reference in New Issue
Block a user