From 2dee30a0b5bbcb5461632a47576ebb5cee4885b3 Mon Sep 17 00:00:00 2001 From: Yuichi Nishiwaki Date: Tue, 26 Nov 2013 09:07:57 -0800 Subject: [PATCH] macroexpand_list supports improper list --- src/macro.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/macro.c b/src/macro.c index 01825e7a..3576ec3b 100644 --- a/src/macro.c +++ b/src/macro.c @@ -242,8 +242,8 @@ macroexpand_list(pic_state *pic, pic_value list, struct pic_senv *senv) { pic_value v; - if (pic_nil_p(list)) - return list; + if (! pic_pair_p(list)) + return macroexpand(pic, list, senv); v = macroexpand(pic, pic_car(pic, list), senv); return pic_cons(pic, v, macroexpand_list(pic, pic_cdr(pic, list), senv));