From 6533fc9b5bb45d6031bffa91b868c720860217b9 Mon Sep 17 00:00:00 2001 From: Yuichi Nishiwaki Date: Fri, 8 Aug 2014 13:59:15 +0900 Subject: [PATCH] =?UTF-8?q?[bugfix]=20identifier=3D=3F?= --- piclib/picrin/macro.scm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/piclib/picrin/macro.scm b/piclib/picrin/macro.scm index 3b12d3ff..6387e15c 100644 --- a/piclib/picrin/macro.scm +++ b/piclib/picrin/macro.scm @@ -35,8 +35,16 @@ val)))) (define (identifier=? env1 sym1 env2 sym2) - (eq? (make-identifier sym1 env1) - (make-identifier sym2 env2))) + + (define (resolve sym env) + (define x (make-identifier sym env)) + (define y (make-identifier sym env)) + (if (eq? x y) + x + sym)) ; resolved to no variable + + (eq? (resolve sym1 env1) + (resolve sym2 env2))) (define (make-syntactic-closure env free form)