summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKathy Gray2017-02-01 11:13:13 +0000
committerKathy Gray2017-02-01 11:13:13 +0000
commitf8d6a50596a73ee050d3493fd9751074504eece1 (patch)
tree717f13d358f6f7e0c3052874448fd1fc428be692 /src
parent03fe888c363444d0860a1de0956088d9ae05c1d8 (diff)
fix up uint type bounds
Diffstat (limited to 'src')
-rw-r--r--src/type_internal.ml13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/type_internal.ml b/src/type_internal.ml
index 56c84e31..85783ada 100644
--- a/src/type_internal.ml
+++ b/src/type_internal.ml
@@ -1842,10 +1842,15 @@ let rec refine_requires check_nvar min_lt max_gt id cs =
let nat_t = {t = Tapp("range",[TA_nexp n_zero;TA_nexp (mk_p_inf());])}
let int_t = {t = Tapp("range",[TA_nexp (mk_n_inf());TA_nexp (mk_p_inf());])}
-let uint8_t = {t = Tapp("range",[TA_nexp n_zero; TA_nexp (mk_2nc (mk_c_int 8) (big_int_of_int 256))])}
-let uint16_t = {t = Tapp("range",[TA_nexp n_zero; TA_nexp (mk_2nc (mk_c_int 16) (big_int_of_int 65536))])}
-let uint32_t = {t = Tapp("range",[TA_nexp n_zero; TA_nexp (mk_2nc (mk_c_int 32) (big_int_of_string "4294967296"))])}
-let uint64_t = {t = Tapp("range",[TA_nexp n_zero; TA_nexp (mk_2nc (mk_c_int 64) (big_int_of_string "18446744073709551616"))])}
+let uint8_t = {t = Tapp("range",[TA_nexp n_zero; TA_nexp (mk_sub (mk_2nc (mk_c_int 8) (big_int_of_int 256)) n_one)])}
+let uint16_t = {t = Tapp("range",[TA_nexp n_zero;
+ TA_nexp (mk_sub (mk_2nc (mk_c_int 16) (big_int_of_int 65536)) n_one)])}
+let uint32_t = {t = Tapp("range",[TA_nexp n_zero;
+ TA_nexp (mk_sub (mk_2nc (mk_c_int 32) (big_int_of_string "4294967296")) n_one)])}
+let uint64_t = {t = Tapp("range",[TA_nexp n_zero;
+ TA_nexp (mk_sub (mk_2nc (mk_c_int 64) (big_int_of_string "18446744073709551616"))
+ (mk_c_int 1))
+ ])}
let int8_t = {t = Tapp("range", [TA_nexp (mk_neg (mk_2nc (mk_c_int 7) (big_int_of_int 128))) ;
TA_nexp (mk_c_int 127)])}