From 6463228d028a4755ef819dcfbbf6426e3a9f8626 Mon Sep 17 00:00:00 2001 From: eunhhu Date: Mon, 19 Oct 2026 07:23:29 +0100 Subject: Lists declared together: three names or more made the statements a cycle (each copy took the first's next, the copy before it), so the compiler never ended (found writing linebreak.aup's nine lists as two lines); frictions declares four --- compiler/compile.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'compiler') diff --git a/compiler/compile.c b/compiler/compile.c index 26e7172..f161182 100644 --- a/compiler/compile.c +++ b/compiler/compile.c @@ -1354,7 +1354,7 @@ static Stmt *statement(Compiler *c, unsigned depth) { for (unsigned i = 1; i < s->name_count; ++i) { Stmt *other = allocate(c, sizeof(*other)); *other = *s; - other->names = NULL, other->name_count = 0; + other->names = NULL, other->name_count = 0, other->next = NULL; /* (s's next is the first other by now) */ memcpy(other->name, s->names[i], NAME); last = last->next = other; } -- cgit v1.2.3