summaryrefslogtreecommitdiffstats
path: root/debug.h
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2019-08-28 06:51:30 -0700
committerKaz Kylheku <kaz@kylheku.com>2019-08-28 06:51:30 -0700
commitb4360fddf3f7368d618b3a706397c2b437ba074f (patch)
treee8ee71affa5ed4103125d12ba7a2f3cadfbc6d63 /debug.h
parent565ef4bbe9e5c69cc482b93d484f2c587e76887d (diff)
downloadtxr-b4360fddf3f7368d618b3a706397c2b437ba074f.tar.gz
txr-b4360fddf3f7368d618b3a706397c2b437ba074f.tar.bz2
txr-b4360fddf3f7368d618b3a706397c2b437ba074f.zip
compiler: bugfix: colon keyword bungle in macro params.
When the (set arg :) form is processed by a compiled version of the set operator, it blows up with "set: arguments must be pairs". This is because the compiled destructuring code is wrongly trying to apply special treatment to a colon symbol argument to an optional parameter. It is documented that such such treatment only happens in function calls, and not in the binding of macro parameter lists. Interpreted macro param binding gets it right. * share/txr/stdlib/compiler.tl (expand-bind-mac-params): Do not treat a : element in the structure as a missing optional argument, but as an ordinary value.
Diffstat (limited to 'debug.h')
0 files changed, 0 insertions, 0 deletions