aboutsummaryrefslogtreecommitdiffhomepage
path: root/checker
diff options
context:
space:
mode:
authorGravatar letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7>2013-08-22 14:29:29 +0000
committerGravatar letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7>2013-08-22 14:29:29 +0000
commitd475ff0d4427fc1c3859fc5d8d0cb7cc0a32a14e (patch)
treea75a8640a512b580569038dcd48ec5b35c9870e2 /checker
parent1f3331bd4ff9fd562d534554185db2b6c4cc9e78 (diff)
Change in vo format : digest aren't Marshalled anymore
Since digests are strings (of size 16), we just dump them now in vo files (cf. Digest.output) instead of using Marshal on them : this is cleaner and saves a few bytes. Increased VOMAGIC to clearly identify this change in the format. Please rerun ./configure after this commit. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@16722 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'checker')
-rw-r--r--checker/check.ml4
-rw-r--r--checker/cic.mli6
-rw-r--r--checker/values.ml2
-rw-r--r--checker/votour.ml2
4 files changed, 7 insertions, 7 deletions
diff --git a/checker/check.ml b/checker/check.ml
index 0d8a4cd22..f1fe3b8c5 100644
--- a/checker/check.ml
+++ b/checker/check.ml
@@ -302,11 +302,11 @@ let intern_from_file (dir, f) =
try
let ch = with_magic_number_check raw_intern_library f in
let (md:Cic.library_disk) = System.marshal_in f ch in
- let (digest:Digest.t) = System.marshal_in f ch in
+ let digest = System.digest_in f ch in
let (table:Cic.opaque_table) = System.marshal_in f ch in
(* Verification of the final checksum *)
let pos = pos_in ch in
- let (checksum:Digest.t) = System.marshal_in f ch in
+ let checksum = System.digest_in f ch in
let () = close_in ch in
let ch = open_in f in
if not (String.equal (Digest.channel ch pos) checksum) then
diff --git a/checker/cic.mli b/checker/cic.mli
index 0b732e4b9..7e0cae20a 100644
--- a/checker/cic.mli
+++ b/checker/cic.mli
@@ -390,9 +390,9 @@ type opaque_table = constr array
(** A .vo file is currently made of :
- 1) a magic number
+ 1) a magic number (4 bytes, cf output_binary_int)
2) a marshalled [library_disk] structure
- 3) a marshalled [Digest.t] string
+ 3) a [Digest.t] string (16 bytes)
4) a marshalled [opaque_table]
- 5) a marshalled [Digest.t] string
+ 5) a [Digest.t] string (16 bytes)
*)
diff --git a/checker/values.ml b/checker/values.ml
index b39d90548..eb43ec3e1 100644
--- a/checker/values.ml
+++ b/checker/values.ml
@@ -13,7 +13,7 @@
To ensure this file is up-to-date, 'make' now compares the md5 of cic.mli
with a copy we maintain here:
-MD5 09a4e5d657809e040f50837a78fe6dfe checker/cic.mli
+MD5 01def72abe22a5b53c7cbe4de4b9695b checker/cic.mli
*)
diff --git a/checker/votour.ml b/checker/votour.ml
index afc1c17a9..11b95c93c 100644
--- a/checker/votour.ml
+++ b/checker/votour.ml
@@ -135,7 +135,7 @@ let visit_vo f =
let ch = open_in_bin f in
let _magic = input_binary_int ch in
let lib = (input_value ch : Obj.t) in (* actually Cic.library_disk *)
- let _ = (input_value ch : Digest.t) in
+ let _ = Digest.input ch in
let tbl = (input_value ch : Obj.t) in (* actually Cic.opaque_table *)
let () = close_in ch in
let o = if !opaque then tbl else lib in