From ca5c17eb1acd8b3f0efb62d6952dfa8bf5551756 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Mon, 7 Mar 2016 06:34:20 -0800 Subject: gc bug: prepared_msg field of struct parser. * parser.l (yyerrprepf): Replace wrong bare assignment to parser->prepared_msg with proper set macro which handles the mutation of a mature generation object such that it points to a baby object. --- parser.l | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'parser.l') diff --git a/parser.l b/parser.l index aa7fb6dc..7c856274 100644 --- a/parser.l +++ b/parser.l @@ -129,7 +129,8 @@ static void yyerrprepf(scanner_t *scanner, val fmt, ...) if (opt_loglevel >= 1) { va_list vl; va_start (vl, fmt); - parser->prepared_msg = vformat_to_string(fmt, vl); + set(mkloc(parser->prepared_msg, parser->parser), + vformat_to_string(fmt, vl)); va_end (vl); } } -- cgit v1.2.3