diff --git a/src/context/common.ml b/src/context/common.ml index 45dc48fc9cf..3c16ca156c8 100644 --- a/src/context/common.ml +++ b/src/context/common.ml @@ -397,7 +397,6 @@ type context = { mutable user_metas : (string, Meta.user_meta) Hashtbl.t; mutable get_macros : unit -> context option; (* typing state *) - mutable global_metadata : (string list * metadata_entry * (bool * bool * bool)) list; shared : shared_context; display_information : display_information; file_lookup_cache : (string,string option) lookup; @@ -830,7 +829,6 @@ let create compilation_step cs version args = file = ""; types = []; callbacks = new compiler_callbacks; - global_metadata = []; modules = []; module_lut = new hashtbl_lookup; module_nonexistent_lut = new hashtbl_lookup; diff --git a/src/context/typecore.ml b/src/context/typecore.ml index d756d1fdbca..8760eafd96f 100644 --- a/src/context/typecore.ml +++ b/src/context/typecore.ml @@ -80,6 +80,7 @@ type typer_globals = { mutable macros : ((unit -> unit) * typer) option; mutable std : module_def; type_patches : (path, (string * bool, type_patch) Hashtbl.t * type_patch) Hashtbl.t; + mutable global_metadata : (string list * metadata_entry * (bool * bool * bool)) list; mutable module_check_policies : (string list * module_check_policy list * bool) list; mutable global_using : (tclass * pos) list; (* Indicates that Typer.create() finished building this instance *) diff --git a/src/typing/macroContext.ml b/src/typing/macroContext.ml index ff77a76e9ca..713b4fcade0 100644 --- a/src/typing/macroContext.ml +++ b/src/typing/macroContext.ml @@ -117,14 +117,6 @@ let typing_timer ctx need_type f = raise e let make_macro_com_api com p = - let parse_metadata s p = - try - match ParserEntry.parse_string Grammar.parse_meta com.defines s null_pos raise_typing_error false with - | ParseSuccess(meta,_,_) -> meta - | ParseError(_,_,_) -> raise_typing_error "Malformed metadata string" p - with _ -> - raise_typing_error "Malformed metadata string" p - in { MacroApi.pos = p; get_com = (fun () -> com); @@ -286,11 +278,7 @@ let make_macro_com_api com p = Interp.exc_string "unsupported" ); add_global_metadata = (fun s1 s2 config p -> - let meta = parse_metadata s2 p in - List.iter (fun (m,el,_) -> - let m = (m,el,p) in - com.global_metadata <- (ExtString.String.nsplit s1 ".",m,config) :: com.global_metadata; - ) meta; + Interp.exc_string "unsupported" ); add_module_check_policy = (fun sl il b i -> Interp.exc_string "unsupported" @@ -549,7 +537,7 @@ let make_macro_api ctx p = let meta = parse_metadata s2 p in List.iter (fun (m,el,_) -> let m = (m,el,p) in - ctx.com.global_metadata <- (ExtString.String.nsplit s1 ".",m,config) :: ctx.com.global_metadata; + ctx.g.global_metadata <- (ExtString.String.nsplit s1 ".",m,config) :: ctx.g.global_metadata; ) meta; ); MacroApi.add_module_check_policy = (fun sl il b i -> diff --git a/src/typing/typeloadCheck.ml b/src/typing/typeloadCheck.ml index fd2ff03c618..3a6e41a3d24 100644 --- a/src/typing/typeloadCheck.ml +++ b/src/typing/typeloadCheck.ml @@ -312,7 +312,7 @@ let check_global_metadata ctx meta f_add mpath tpath so = List.iter (fun (sl2,m,(recursive,to_types,to_fields)) -> let add = ((field_mode && to_fields) || (not field_mode && to_types)) && (match_path recursive sl1 sl2) in if add then f_add m - ) ctx.com.global_metadata; + ) ctx.g.global_metadata; if ctx.is_display_file then delay ctx PCheckConstraint (fun () -> DisplayEmitter.check_display_metadata ctx meta) let check_module_types ctx m p t = diff --git a/src/typing/typer.ml b/src/typing/typer.ml index 70ab2b271c5..3e2aa66022a 100644 --- a/src/typing/typer.ml +++ b/src/typing/typer.ml @@ -1999,6 +1999,7 @@ let create com = core_api = None; macros = None; type_patches = Hashtbl.create 0; + global_metadata = []; module_check_policies = []; delayed = []; debug_delayed = [];