aboutsummaryrefslogtreecommitdiff
path: root/src/boot/driver/lib.ml
diff options
context:
space:
mode:
authorPatrick Walton <[email protected]>2010-09-07 16:35:00 -0700
committerPatrick Walton <[email protected]>2010-09-07 16:35:21 -0700
commitffdb5fc8582c77eef7b3a30859eaa216872525a4 (patch)
treef43afee8d7fcbad87aac197bc774b11e440edfad /src/boot/driver/lib.ml
parentAdd hashmap tests exercising strings as keys and values. No longer leaks on ... (diff)
downloadrust-ffdb5fc8582c77eef7b3a30859eaa216872525a4.tar.xz
rust-ffdb5fc8582c77eef7b3a30859eaa216872525a4.zip
Initial support for a global crate metadata cache
Diffstat (limited to 'src/boot/driver/lib.ml')
-rw-r--r--src/boot/driver/lib.ml6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/boot/driver/lib.ml b/src/boot/driver/lib.ml
index 71b310b0..40d79256 100644
--- a/src/boot/driver/lib.ml
+++ b/src/boot/driver/lib.ml
@@ -59,7 +59,7 @@ let get_sects
let get_meta
(sess:Session.sess)
(filename:filename)
- : Ast.meta option =
+ : Session.meta option =
htab_search_or_add meta_cache filename
begin
fun _ ->
@@ -190,6 +190,10 @@ let get_mod
match get_meta sess file with
None -> ()
| Some meta ->
+ if not (Hashtbl.mem
+ sess.Session.sess_crate_meta meta) then
+ Hashtbl.add sess.Session.sess_crate_meta
+ meta (Session.make_crate_id sess);
Array.iter
(fun (k,v) -> log sess "%s = %S" k v)
meta;