diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2021-06-07 06:29:07 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2021-06-07 06:29:07 -0700 |
commit | e6f1010ef967123bcc1046383d228dbae78bcde4 (patch) | |
tree | ec13b48e17e1c0d923d553604031b9ead835557d /cadr.h | |
parent | 39f620152808fb3e8aedd4386b96491cc18331b8 (diff) | |
download | txr-e6f1010ef967123bcc1046383d228dbae78bcde4.tar.gz txr-e6f1010ef967123bcc1046383d228dbae78bcde4.tar.bz2 txr-e6f1010ef967123bcc1046383d228dbae78bcde4.zip |
expander: expand must only ignores unbound warnings.
The expand function must not muffle all deferred warnings.
That causes the problem that a form like (inc var a.bar) fails
to produce a warning due to bar not being the slot of any
structure. The expand function must only muffle warnings about
undefined functions and variables.
* eval.c (muffle_unbound_warning): New static function.
(no_warn_expand): Use muffle_unbound_warning as handler,
rather than uw_muffle_warning.
* tests/012/struct.tl: Fix two test cases here which test the
expand function using a form that references a nonexistent
slot. These now generate a warning, so we use the slot name b
rather than d, which is defined.
* txr.1: Documented change to expand.
Diffstat (limited to 'cadr.h')
0 files changed, 0 insertions, 0 deletions