diff options
| author | Alasdair | 2020-09-29 16:23:40 +0100 |
|---|---|---|
| committer | Alasdair | 2020-09-29 16:32:24 +0100 |
| commit | 7441db19749fb7fb9383b6361dfbd99547e53486 (patch) | |
| tree | 779f90dbe139bce648540d517be84b156d92319e /src/constant_propagation.ml | |
| parent | 6dbd0facf0962d869d0c3957f668b035a4a6605c (diff) | |
Refactor: Change AST type from a union to a struct
Diffstat (limited to 'src/constant_propagation.ml')
| -rw-r--r-- | src/constant_propagation.ml | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/constant_propagation.ml b/src/constant_propagation.ml index b7bc0a69..cea1fe93 100644 --- a/src/constant_propagation.ml +++ b/src/constant_propagation.ml @@ -301,16 +301,16 @@ let is_env_inconsistent env ksubsts = module StringSet = Set.Make(String) module StringMap = Map.Make(String) -let const_props target defs ref_vars = +let const_props target ast ref_vars = let const_fold exp = (* Constant-fold function applications with constant arguments *) let interpreter_istate = (* Do not interpret undefined_X functions *) let open Interpreter in - let undefined_builtin_ids = ids_of_ast (Defs Initial_check.undefined_builtin_val_specs) in + let undefined_builtin_ids = ids_of_defs Initial_check.undefined_builtin_val_specs in let remove_primop id = StringMap.remove (string_of_id id) in let remove_undefined_primops = IdSet.fold remove_primop undefined_builtin_ids in - let (lstate, gstate) = Constant_fold.initial_state defs Type_check.initial_env in + let (lstate, gstate) = Constant_fold.initial_state ast Type_check.initial_env in (lstate, { gstate with primops = remove_undefined_primops gstate.primops }) in try @@ -328,9 +328,7 @@ let const_props target defs ref_vars = Bindings.add id exp m | _ -> m in - match defs with - | Defs defs -> - List.fold_left add Bindings.empty defs + List.fold_left add Bindings.empty ast.defs in let replace_constant (E_aux (e,annot) as exp) = match e with |
