From 645d05681251117202262482180deed66036dab7 Mon Sep 17 00:00:00 2001 From: Alex Shinn Date: Tue, 8 Mar 2011 22:02:10 +0900 Subject: [PATCH] don't warn about invaild operators if there was a syntax error --- eval.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/eval.c b/eval.c index d4db19ff..16865faa 100644 --- a/eval.c +++ b/eval.c @@ -828,11 +828,12 @@ static sexp analyze (sexp ctx, sexp object) { } } } else { - if (! (sexp_pairp(sexp_car(x)) - || (sexp_synclop(sexp_car(x)) - && sexp_pairp(sexp_synclo_expr(sexp_car(x)))))) - sexp_warn(ctx, "invalid operand in application: ", x); res = analyze_app(ctx, x); + if (!sexp_exceptionp(res) + && !(sexp_pairp(sexp_car(x)) + || (sexp_synclop(sexp_car(x)) + && sexp_pairp(sexp_synclo_expr(sexp_car(x)))))) + sexp_warn(ctx, "invalid operator in application: ", x); } } else if (sexp_idp(x)) { res = analyze_var_ref(ctx, x, NULL);