From a6168c685693feff83a7434968b4e9e471f96214 Mon Sep 17 00:00:00 2001 From: Marcel van Kervinck Date: Sat, 18 May 2019 10:59:14 +0200 Subject: [PATCH] lcc: Put runaway limit to stack allocation --- Utils/lcc/src/gt1.md | 1 + 1 file changed, 1 insertion(+) diff --git a/Utils/lcc/src/gt1.md b/Utils/lcc/src/gt1.md index bff1b7504..30256e43f 100644 --- a/Utils/lcc/src/gt1.md +++ b/Utils/lcc/src/gt1.md @@ -1225,6 +1225,7 @@ static void local(Symbol p) { debug(fprint(stderr, "local %s of size %d @ offset %d\n", p->name, p->type->size, offset)); p->x.name = stringd(offset); offset += p->type->size; + assert(offset < 0x10000lu); // Catch only big overruns. Default stack is much smaller. } } static void function(Symbol f, Symbol caller[], Symbol callee[], int n) {