diff options
| author | WormHeamer | 2025-08-05 03:46:10 -0400 |
|---|---|---|
| committer | WormHeamer | 2025-08-05 03:46:10 -0400 |
| commit | bbbbbf3dec1a2df0a825a16850a75f9c5b7a2dce (patch) | |
| tree | cb1a26c4200cd5b0e72e2866ae6414fcbcf8a559 /main.c | |
| parent | 077cfda58e74bef67d23a4092031cdb6afcf7a48 (diff) | |
fix params being pushed in reverse order
Diffstat (limited to 'main.c')
| -rw-r--r-- | main.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -139,13 +139,13 @@ void parse_args_list(Lexer *l, Proc *proc) { Value v = (Value) { .type = parse_type(l, proc) }; ZDA_PUSH(&start->val.tuple, v, &proc->arena); lex_expected(l, TM_RPAREN | TM_COMMA); - while (id > 0) { - id--; + for (int j = 0; j < id; j++) { Node *proj = node_new(proc, N_PROJ, proc->start); proj->val.type = v.type; proj->val.i = i++; - scope_bind(&proc->scope, idbuf[id].name, proj, idbuf[id].pos, proc); + scope_bind(&proc->scope, idbuf[j].name, proj, idbuf[j].pos, proc); } + id = 0; } lex_expected(l, TM_RPAREN); lex_next(l); |
