diff options
Diffstat (limited to 'library/states.ml')
-rw-r--r-- | library/states.ml | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/library/states.ml b/library/states.ml index f30633171..906ebdacc 100644 --- a/library/states.ml +++ b/library/states.ml @@ -18,13 +18,16 @@ let unfreeze (fl,fs) = Summary.unfreeze_summaries fs let (extern_state,intern_state) = + let ensure_suffix f = CUnix.make_suffix f ".coq" in let (raw_extern, raw_intern) = - extern_intern Coq_config.state_magic_number ".coq" in + extern_intern Coq_config.state_magic_number in (fun s -> + let s = ensure_suffix s in if !Flags.load_proofs <> Flags.Force then Errors.error "Write State only works with option -force-load-proofs"; raw_extern s (freeze())), (fun s -> + let s = ensure_suffix s in unfreeze (with_magic_number_check (raw_intern (Library.get_load_paths ())) s); Library.overwrite_library_filenames s) |