summaryrefslogtreecommitdiffstats
path: root/termios.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2021-01-15 16:07:31 -0800
committerKaz Kylheku <kaz@kylheku.com>2021-01-15 16:07:31 -0800
commitc058a946c6fbc918ff233aea1e301921e7ce68b8 (patch)
tree1ef5eac5e21ffeb0a8039efd58e821b7a375a414 /termios.c
parent2d9d10ad41490e7bb58cc74af357a52373c0ed5e (diff)
downloadtxr-c058a946c6fbc918ff233aea1e301921e7ce68b8.tar.gz
txr-c058a946c6fbc918ff233aea1e301921e7ce68b8.tar.bz2
txr-c058a946c6fbc918ff233aea1e301921e7ce68b8.zip
mapcar/maprod: show-stopper bug.
Observed wrong result: (mapcar (lambda (. args) (list . args)) '#(1 2 3) '#(4 5 6)) -> #((1 4) nil nil) Correct result: -> #((1 4) (2 5) (3 6)) This is not specific to vector input; it's broken for sequences of all types. Functions affected are mapcar, mapf, mappend, mapdo, maprod, maprend, maprodo. * eval.c (map_common, prod_common): Because we reuse the args structure across iterations, we must reinitialize the fill and list members. These can be modified by the functionw which is called. In particular, the arguments are applied, they may be turned into a list (fill decrements to zero, and a list is produced).
Diffstat (limited to 'termios.c')
0 files changed, 0 insertions, 0 deletions