File tree Expand file tree Collapse file tree 3 files changed +15
-6
lines changed Expand file tree Collapse file tree 3 files changed +15
-6
lines changed Original file line number Diff line number Diff line change 293
293
(then
294
294
(local.set $a1 ($MAL_GET_A1 $ast))
295
295
(local.set $a2 ($MAL_GET_A2 $ast))
296
- (local.set $res ($EVAL $a2 $env))
296
+ (local.set $f ($EVAL $a2 $env))
297
+ (local.set $res ($MALFUNC ($MEM_VAL0_ptr $f)
298
+ ($MEM_VAL1_ptr $f) ($MEM_VAL2_ptr $f)))
297
299
($SET_TYPE $res (global.get $MACRO_T))
298
300
(br_if $EVAL_return (global.get $error_type))
301
+ ($RELEASE $f)
299
302
300
303
;; set a1 in env to a2
301
- (local.set $res ($ENV_SET $env $a1 $res))
304
+ (drop ($ENV_SET $env $a1 $res))
302
305
(br $EVAL_return))
303
306
)
304
307
(if (i32.eqz ($strcmp "if" $a0sym))
Original file line number Diff line number Diff line change 293
293
(then
294
294
(local.set $a1 ($MAL_GET_A1 $ast))
295
295
(local.set $a2 ($MAL_GET_A2 $ast))
296
- (local.set $res ($EVAL $a2 $env))
296
+ (local.set $f ($EVAL $a2 $env))
297
+ (local.set $res ($MALFUNC ($MEM_VAL0_ptr $f)
298
+ ($MEM_VAL1_ptr $f) ($MEM_VAL2_ptr $f)))
297
299
($SET_TYPE $res (global.get $MACRO_T))
298
300
(br_if $EVAL_return (global.get $error_type))
301
+ ($RELEASE $f)
299
302
300
303
;; set a1 in env to a2
301
- (local.set $res ($ENV_SET $env $a1 $res))
304
+ (drop ($ENV_SET $env $a1 $res))
302
305
(br $EVAL_return))
303
306
)
304
307
(if (i32.eqz ($strcmp "try*" $a0sym))
Original file line number Diff line number Diff line change 293
293
(then
294
294
(local.set $a1 ($MAL_GET_A1 $ast))
295
295
(local.set $a2 ($MAL_GET_A2 $ast))
296
- (local.set $res ($EVAL $a2 $env))
296
+ (local.set $f ($EVAL $a2 $env))
297
+ (local.set $res ($MALFUNC ($MEM_VAL0_ptr $f)
298
+ ($MEM_VAL1_ptr $f) ($MEM_VAL2_ptr $f)))
297
299
($SET_TYPE $res (global.get $MACRO_T))
298
300
(br_if $EVAL_return (global.get $error_type))
301
+ ($RELEASE $f)
299
302
300
303
;; set a1 in env to a2
301
- (local.set $res ($ENV_SET $env $a1 $res))
304
+ (drop ($ENV_SET $env $a1 $res))
302
305
(br $EVAL_return))
303
306
)
304
307
(if (i32.eqz ($strcmp "try*" $a0sym))
You can’t perform that action at this time.
0 commit comments