diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2011-12-29 21:47:30 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2011-12-29 21:47:30 -0800 |
commit | 3e09c38f75b087e583abb30762a9a251b8f424f9 (patch) | |
tree | e48b165dac486deb5e8624168be0b828e8c3690b /parser.y | |
parent | 434e8830bed27a0436e3867c50b7419123e3d49d (diff) | |
download | txr-3e09c38f75b087e583abb30762a9a251b8f424f9.tar.gz txr-3e09c38f75b087e583abb30762a9a251b8f424f9.tar.bz2 txr-3e09c38f75b087e583abb30762a9a251b8f424f9.zip |
* parser.y (repeat_rep_helper): Bugfix. Circular lists
were being created here when clauses of the same kind appear multiple
times. The problem is that append2 no longer copies the second list,
which the code was relying on it to do.
Diffstat (limited to 'parser.y')
-rw-r--r-- | parser.y | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -793,7 +793,7 @@ static val repeat_rep_helper(val sym, val main, val parts) for (iter = parts; iter != nil; iter = cdr(iter)) { val part = car(iter); val sym = car(part); - val clauses = cdr(part); + val clauses = copy_list(cdr(part)); if (sym == single_s) single_parts = nappend2(single_parts, clauses); |