src/Pure/proof_general.ML
changeset 20364 f7e440f2eb2f
parent 20299 5330f710b960
child 20642 cfe2b0803a51
--- a/src/Pure/proof_general.ML	Wed Aug 09 00:12:33 2006 +0200
+++ b/src/Pure/proof_general.ML	Wed Aug 09 00:12:35 2006 +0200
@@ -503,6 +503,9 @@
 
 local
 
+fun signed_string_of_int i =
+  if i < 0 then "-" ^ string_of_int (~ i) else string_of_int i;
+
 val pgipint = XML.element "pgipint" [] [];
 val pgipnat = XML.element "pgipint" [("min", "0")] [];
 fun pgipnatmax max = XML.element "pgipint" [("min", "0"), ("max", string_of_int max)] [];
@@ -513,7 +516,7 @@
 in
 
 fun int_option r = (pgipint,
-  with_default (fn () => string_of_int (! r)),
+  with_default (fn () => signed_string_of_int (! r)),
   (fn s => (case Syntax.read_int s of
       NONE => error ("int_option: illegal value: " ^ s)
     | SOME i => r := i)));