don't warn about invaild operators if there was a syntax error

This commit is contained in:
Alex Shinn 2011-03-08 22:02:10 +09:00
parent 4722703d64
commit 645d056812

9
eval.c
View file

@ -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);