diff options
| author | Alasdair Armstrong | 2017-11-29 18:13:17 +0000 |
|---|---|---|
| committer | Alasdair Armstrong | 2017-11-29 18:13:17 +0000 |
| commit | 636d81ee6afba69b7a2516e8149eeef3691cd67e (patch) | |
| tree | ad06beb349ffd6ce93c9f4489af21055bc1b3575 /src/lem_interp | |
| parent | d25a996750978e7624902852bde90a679b50261e (diff) | |
Switched to bytecode compiler for executing interpreter to avoid stack overflow
Diffstat (limited to 'src/lem_interp')
| -rw-r--r-- | src/lem_interp/instruction_extractor.lem | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lem_interp/instruction_extractor.lem b/src/lem_interp/instruction_extractor.lem index 8bc19f8c..056f0100 100644 --- a/src/lem_interp/instruction_extractor.lem +++ b/src/lem_interp/instruction_extractor.lem @@ -127,7 +127,10 @@ let rec extract_patt_parm (P_aux p (_,tannot)) = let rec extract_from_execute fcls = match fcls with | [] -> [] | FCL_aux (FCL_Funcl _ (P_aux (P_app (Id_aux (Id i) _) parms) _) _) (_,Just(_,_,_,Effect_aux(Effect_set efs) _,_))::fcls -> - (Instr_form i (List.map extract_patt_parm parms) efs)::extract_from_execute fcls + (Instr_form i (List.map extract_patt_parm parms) efs)::extract_from_execute fcls + | _ :: fcls -> + (* AA: Find out what breaks this *) + extract_from_execute fcls end let rec extract_effects instrs execute = |
