diff options
author | Pierre Letouzey <pierre.letouzey@inria.fr> | 2016-04-26 17:30:30 +0200 |
---|---|---|
committer | Pierre Letouzey <pierre.letouzey@inria.fr> | 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 3ea8c2431..09917339a 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 |