diff options
| author | Pierre Letouzey | 2016-04-26 17:30:30 +0200 |
|---|---|---|
| committer | Pierre Letouzey | 2017-06-14 09:44:21 +0200 |
| commit | d038839a32978548051573286e22462d68d42ee6 (patch) | |
| tree | 14af8ed8354ef5ace1f685b1593529a2394f86d8 /plugins/ssr | |
| parent | 7e63c300a3aa1e3befb29bab9094e8b1939824bb (diff) | |
Constrexpr.Numeral stays uninterpreted (string+sign instead of BigInt.t)
This string contains the base-10 representation of the number (big endian)
Note that some inner parsing stuff still uses bigints, see egramcoq.ml
Diffstat (limited to 'plugins/ssr')
| -rw-r--r-- | plugins/ssr/ssrparser.ml4 | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/plugins/ssr/ssrparser.ml4 b/plugins/ssr/ssrparser.ml4 index 3ea8c24314..09917339a7 100644 --- a/plugins/ssr/ssrparser.ml4 +++ b/plugins/ssr/ssrparser.ml4 @@ -346,7 +346,8 @@ let interp_index ist gl idx = | Some c -> let rc = Detyping.detype false [] (pf_env gl) (project gl) c in begin match Notation.uninterp_prim_token rc with - | _, Constrexpr.Numeral bigi -> int_of_string (Bigint.to_string bigi) + | _, Constrexpr.Numeral (s,b) -> + let n = int_of_string s in if b then n else -n | _ -> raise Not_found end | None -> raise Not_found |
