diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2016-03-07 06:34:20 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2016-03-07 06:34:20 -0800 |
commit | ca5c17eb1acd8b3f0efb62d6952dfa8bf5551756 (patch) | |
tree | 6f05e5882cf12ac60d3be542ac8d99a2c5b2cff7 | |
parent | 4a03a56b463d01980c10192e76ed787d56408cd8 (diff) | |
download | txr-ca5c17eb1acd8b3f0efb62d6952dfa8bf5551756.tar.gz txr-ca5c17eb1acd8b3f0efb62d6952dfa8bf5551756.tar.bz2 txr-ca5c17eb1acd8b3f0efb62d6952dfa8bf5551756.zip |
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.
-rw-r--r-- | parser.l | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -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); } } |