From af6b40a9a3d7a275bde95641c6a2d2b9f247e8eb Mon Sep 17 00:00:00 2001 From: ceriel Date: Fri, 17 Nov 1989 11:36:43 +0000 Subject: [PATCH] fixed bug which caused memory faults on erroneous input --- lang/cem/cemcom.ansi/ival.g | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lang/cem/cemcom.ansi/ival.g b/lang/cem/cemcom.ansi/ival.g index fdee44a4..38a2e9d0 100644 --- a/lang/cem/cemcom.ansi/ival.g +++ b/lang/cem/cemcom.ansi/ival.g @@ -93,6 +93,7 @@ initial_value_pack(struct type **tpp; struct expr **expp;) initial_value_list(register struct type **tpp; struct expr **expp;) { struct expr *e1; register struct type **tpp2 = 0; + int err_flag = gen_error; } : { if (tpp) tpp2 = gen_tphead(tpp, 0); } @@ -104,7 +105,7 @@ initial_value_list(register struct type **tpp; struct expr **expp;) initial_value(tpp2, &e1) { if (!tpp) init_expression(&expp, e1); } ]* - { if (tpp) gen_tpend(); } + { if (tpp && ! err_flag) gen_tpend(); } ','? /* optional trailing comma */ ;