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"