summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--eval.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/eval.c b/eval.c
index f36ca763..497644b0 100644
--- a/eval.c
+++ b/eval.c
@@ -4291,6 +4291,7 @@ static val me_case(val form, val menv)
static val me_ecase(val form, val menv)
{
+ val form_orig = form;
val casesym = pop(&form);
val orig_args = form;
val testform = pop(&form);
@@ -4298,6 +4299,9 @@ static val me_ecase(val form, val menv)
val clauses = form;
val lastclause = car(lastcons(clauses));
+ if (!orig_args)
+ expand_error(form_orig, lit("~s: missing test form"), casesym, nao);
+
if (consp(lastclause) && car(lastclause) == t) {
return cons(tgtsym, orig_args);
} else {