From 968f5211d2c64f01c02d416a9ca197b1f43dfc2a Mon Sep 17 00:00:00 2001 From: lemon Date: Fri, 24 Oct 2025 13:50:11 +0200 Subject: codegen fixes, propagate terminate --- c/c.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'c/c.c') diff --git a/c/c.c b/c/c.c index 5ba6c2e..6ae7ee7 100644 --- a/c/c.c +++ b/c/c.c @@ -3712,7 +3712,12 @@ stmt(struct comp *cm, struct function *fn) putbranch(fn, begin); freearena(&atmpp); } else if (!terminates) putbranch(fn, begin); - useblk(fn, fl); + if (fl->npred > 0) { + useblk(fn, fl); + } else { + freeblk(fn, fl); + terminates = 1; + } } envup(cm); break; -- cgit v1.2.3