aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2019-02-15 19:52:02 -0800
committerMichael Forney <mforney@mforney.org>2019-02-15 19:52:18 -0800
commite8b57d5e943171add23fc3674a34dbbb93d49046 (patch)
treed55c83c80c7f8b42cf7b3d32f6b51aefa05ed8c9
parent9946adcf5ffcc00b1a8665649b42bdc35bf72d35 (diff)
downloadcproc-e8b57d5e943171add23fc3674a34dbbb93d49046.tar.xz
Handle main with no return
-rw-r--r--qbe.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/qbe.c b/qbe.c
index 670ad83..c6986b4 100644
--- a/qbe.c
+++ b/qbe.c
@@ -1038,7 +1038,7 @@ emitfunc(struct function *f, bool global)
size_t n;
if (!f->end->terminated)
- funcret(f, NULL);
+ funcret(f, strcmp(f->name, "main") == 0 ? mkintconst(&i32, 0) : NULL);
if (global)
puts("export");
fputs("function ", stdout);