diff --git a/_oasis b/_oasis index bf1efb4eca608bcab4565e9cb8b5f4cac2b172f6..44ae59d25183e77ad5e38fb82276606bcc94946c 100644 --- a/_oasis +++ b/_oasis @@ -1,6 +1,6 @@ OASISFormat: 0.4 Name: lutils -Version: 1.13 +Version: 1.14 Authors: Erwan Jahier Maintainers: erwan.jahier@imag.fr License: GPL-3 diff --git a/doc/version.tex b/doc/version.tex index ec5f35feb3f6b2605cf69e561437ce5630311b1e..76b4ce5f931e18743209d0a66ae2644eca7ec9fb 100644 --- a/doc/version.tex +++ b/doc/version.tex @@ -1,4 +1,4 @@ -\newcommand{\version}{1.13} -\newcommand{\sha}{0013635} +\newcommand{\version}{1.14} +\newcommand{\sha}{e9db055} \newcommand{\versionname}{none} -\newcommand{\versiondate}{12-06-17} +\newcommand{\versiondate}{22-06-17} diff --git a/src/META b/src/META index 462d0c07749352767e107c1586c2c8f82b89e492..5e2f56d4e2e888ad2ab63aa1cd3be8109b6a8d37 100644 --- a/src/META +++ b/src/META @@ -1,6 +1,6 @@ # OASIS_START -# DO NOT EDIT (digest: 15d9e918ed9eb34ce3e848dd1e1775a7) -version = "1.13" +# DO NOT EDIT (digest: bd2a3dd8b4c274b4d60cc3825abe018b) +version = "1.14" description = "shared by Verimag/synchronous tools (lustre, lutin, rdbg)." requires = "unix str camlp4 num" archive(byte) = "lutils.cma" diff --git a/src/localGenlex.ml b/src/localGenlex.ml index bc60fc3ee21d0039653a98214d051ea3ffcdf7df..444dc40cd3b7a5557664d91199ef793da738d322 100644 --- a/src/localGenlex.ml +++ b/src/localGenlex.ml @@ -27,15 +27,19 @@ let big_max_int = Big_int.big_int_of_nativeint Nativeint.max_int let local_int_of_string str = try int_of_string str with _ -> - let big_i0 = Big_int.big_int_of_string str in - let big_i = Big_int.mod_big_int big_i0 (Big_int.succ_big_int big_max_int) in - let i = Nativeint.to_int (Big_int.nativeint_of_big_int big_i) in - if (Big_int.big_int_of_int i <> big_i0) then ( - Printf.eprintf "Warning: integer overflow (%s truncated to %s)\n" - (Big_int.string_of_big_int big_i0) (string_of_int i); - flush stderr - ); - i + if Str.string_match (Str.regexp "[a-z]") str 0 + then failwith ("Cannot convert "^str^" into an int") + else + let big_i0 = Big_int.big_int_of_string str in + let big_i = Big_int.mod_big_int big_i0 (Big_int.succ_big_int big_max_int) in + let i = Nativeint.to_int (Big_int.nativeint_of_big_int big_i) in + if (Big_int.big_int_of_int i <> big_i0) then ( + Printf.eprintf "Warning: integer overflow (%s truncated to %s)\n" + (Big_int.string_of_big_int big_i0) (string_of_int i); + flush stderr + ); + i + diff --git a/src/lutilsVersion.ml b/src/lutilsVersion.ml index 7ad3273d80a4614986952ed1498e1772dc3b2f32..0c749de90a6db2f9fbb55518a482aad29344655a 100644 --- a/src/lutilsVersion.ml +++ b/src/lutilsVersion.ml @@ -1,2 +1,2 @@ -let str="1.13" -let sha="0013635" +let str="1.14" +let sha="e9db055"