aboutsummaryrefslogtreecommitdiffstats
path: root/symbol.c
diff options
context:
space:
mode:
Diffstat (limited to 'symbol.c')
-rw-r--r--symbol.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/symbol.c b/symbol.c
index afa38f1b..9f40568a 100644
--- a/symbol.c
+++ b/symbol.c
@@ -266,7 +266,10 @@ remove_locals(NODE *func)
assert(func->type == Node_func);
- if ( (pcount = func->frame_cnt) <= 0
+ /* Only remove up to param_cnt. The @let locals from param_cnt to frame_cnt
+ * should have already been removed by the parser.
+ */
+ if ( (pcount = func->param_cnt) <= 0
|| (parms = func->fparms) == NULL)
return;