summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--eval.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index a362c6c9..ce00aecb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2014-02-16 Kaz Kylheku <kaz@kylheku.com>
+ * eval.c (bind_macro_params): Bugfix: enforce mismatch on
+ superfluous material.
+
+2014-02-16 Kaz Kylheku <kaz@kylheku.com>
+
In the spirit of the previous hack, here is another hack to
alleviate a long-standing pain: when an exception happens in
TXR's library somewhere, the program dies without leaving
diff --git a/eval.c b/eval.c
index 5e9e2f5f..22e81926 100644
--- a/eval.c
+++ b/eval.c
@@ -654,6 +654,11 @@ noarg:
env_vbind(new_env, params, form);
}
+ if (form)
+ eval_error(ctx_form,
+ lit("~s: extra form part ~s not matched by parameter list"),
+ car(ctx_form), form, nao);
+
return new_env;
nbind: