Skip to content

Commit 455887f

Browse files
authored
flambda-backend: Simplifications following PR #1667 (#1668)
A couple of small simplifications that are obvious by themselves but would have made #1667 a bit harder to review: * `Env.sign_of_cmi` is only called via `read_sign_of_cmi` with `~freshen:true`, so just rename `sign_of_cmi` to `read_sign_of_cmi` and freshen unconditionally * `Persistent_env.save_pers_struct` requires a `pers_struct` but doesn't use all of it, so split out its arguments
1 parent 6c0a9e8 commit 455887f

File tree

2 files changed

+9
-22
lines changed

2 files changed

+9
-22
lines changed

typing/env.ml

+3-7
Original file line numberDiff line numberDiff line change
@@ -926,7 +926,7 @@ let components_of_module ~alerts ~uid env ps path addr mty shape =
926926
}
927927
}
928928

929-
let sign_of_cmi ~freshen { Persistent_env.Persistent_signature.cmi; _ } =
929+
let read_sign_of_cmi { Persistent_env.Persistent_signature.cmi; _ } =
930930
let name = cmi.cmi_name in
931931
let sign = cmi.cmi_sign in
932932
let flags = cmi.cmi_flags in
@@ -954,10 +954,8 @@ let sign_of_cmi ~freshen { Persistent_env.Persistent_signature.cmi; _ } =
954954
let mda_components =
955955
let mty = Subst.Lazy.Mty_signature sign in
956956
let mty =
957-
if freshen then
958-
Subst.Lazy.modtype (Subst.Rescope (Path.scope path))
959-
Subst.identity mty
960-
else mty
957+
Subst.Lazy.modtype (Subst.Rescope (Path.scope path))
958+
Subst.identity mty
961959
in
962960
components_of_module ~alerts ~uid:md.md_uid
963961
empty Subst.identity
@@ -970,8 +968,6 @@ let sign_of_cmi ~freshen { Persistent_env.Persistent_signature.cmi; _ } =
970968
mda_shape;
971969
}
972970

973-
let read_sign_of_cmi = sign_of_cmi ~freshen:true
974-
975971
let persistent_env : module_data Persistent_env.t ref =
976972
s_table Persistent_env.empty ()
977973

typing/persistent_env.ml

+6-15
Original file line numberDiff line numberDiff line change
@@ -168,17 +168,17 @@ let fold {persistent_structures; _} f x =
168168

169169
(* Reading persistent structures from .cmi files *)
170170

171-
let save_pers_struct penv crc ps =
171+
let save_pers_struct penv crc comp_unit flags filename =
172172
let {crc_units; _} = penv in
173-
let modname = CU.name ps.ps_name in
173+
let modname = CU.name comp_unit in
174174
List.iter
175175
(function
176176
| Rectypes -> ()
177177
| Alerts _ -> ()
178178
| Unsafe_string -> ()
179179
| Opaque -> register_import_as_opaque penv modname)
180-
ps.ps_flags;
181-
Consistbl.set crc_units modname ps.ps_name crc ps.ps_filename;
180+
flags;
181+
Consistbl.set crc_units modname comp_unit crc filename;
182182
add_import penv modname
183183

184184
let acknowledge_pers_struct penv check modname pers_sig pm =
@@ -385,7 +385,7 @@ let save_cmi penv psig =
385385
let {
386386
cmi_name = modname;
387387
cmi_sign = _;
388-
cmi_crcs = imports;
388+
cmi_crcs = _;
389389
cmi_flags = flags;
390390
} = cmi in
391391
let crc =
@@ -394,16 +394,7 @@ let save_cmi penv psig =
394394
(fun temp_filename oc -> output_cmi temp_filename oc cmi) in
395395
(* Enter signature in consistbl so that imports()
396396
will also return its crc *)
397-
let ps =
398-
{ ps_name = modname;
399-
ps_crcs =
400-
Array.append
401-
[| Import_info.create_normal cmi.cmi_name ~crc:(Some crc) |]
402-
imports;
403-
ps_filename = filename;
404-
ps_flags = flags;
405-
} in
406-
save_pers_struct penv crc ps
397+
save_pers_struct penv crc modname flags filename
407398
)
408399
~exceptionally:(fun () -> remove_file filename)
409400

0 commit comments

Comments
 (0)