From c1b264c157821352175eee7f5663f2c1782dfc1f Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Sat, 21 Aug 2021 17:21:14 -0700 Subject: ecase: diagnose bad syntax. * eval.c (me_ecase): Diagnose missing test form, like me_case. --- eval.c | 4 ++++ 1 file changed, 4 insertions(+) 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 { -- cgit v1.2.3