commit 0717542bba2021b87f92ab99fbd1851618e17da5
parent 582337f4ec80f5afcbcbf77965865afb9042a25a
Author: Roberto E. Vargas Caballero <k0ga@shike2.com>
Date: Sun, 31 Oct 2021 08:16:50 +0100
cc1: Disable longjmp()
We do not set the recovery points at this moment,
and it means that executing the longjmp() of
discard() will surely generate a segmentation
fault. This patch disables the call to longjmp()
with an exit() until we fix the recovery problem.
Diffstat:
1 file changed, 9 insertions(+), 0 deletions(-)
diff --git a/src/cmd/cc/cc1/lex.c b/src/cmd/cc/cc1/lex.c
@@ -852,5 +852,14 @@ discard(void)
}
jump:
yytoken = c;
+ exit(EXIT_FAILURE);
+
+ /*
+ * FIXME: We don't have a proper recover mechanism at this moment
+ * and we don't set the recover point ever, so executing this
+ * longjmp will generate surely a segmentation fault, so it does
+ * not make sense to do it. We just exit until we can find time
+ * to solve this problem.
+ */
longjmp(recover, 1);
}