[uim-commit] r1683 - branches/r5rs/sigscheme

yamaken at freedesktop.org yamaken at freedesktop.org
Fri Sep 30 04:07:34 PDT 2005


Author: yamaken
Date: 2005-09-30 04:07:32 -0700 (Fri, 30 Sep 2005)
New Revision: 1683

Modified:
   branches/r5rs/sigscheme/eval.c
Log:
* sigscheme/eval.c
  - (ScmExp_letrec): Add error check for symbol


Modified: branches/r5rs/sigscheme/eval.c
===================================================================
--- branches/r5rs/sigscheme/eval.c	2005-09-30 11:03:22 UTC (rev 1682)
+++ branches/r5rs/sigscheme/eval.c	2005-09-30 11:07:32 UTC (rev 1683)
@@ -1202,12 +1202,11 @@
         binding = CAR(bindings);
 
 #if SCM_COMPAT_SIOD_BUGS
-        if (NULLP(binding))
+        if (NULLP(binding) || !SYMBOLP(var = CAR(binding)))
             SigScm_ErrorObj("letrec : invalid binding form : ", binding);
-        var = CAR(binding);
         val = (!CONSP(CDR(binding))) ? SCM_FALSE : CADR(binding);
 #else
-        if (!NULLP(SCM_SHIFT_RAW_2(var, val, binding)))
+        if (!NULLP(SCM_SHIFT_RAW_2(var, val, binding)) || !SYMBOLP(var))
             SigScm_ErrorObj("letrec : invalid binding form : ", binding);
 #endif
 



More information about the uim-commit mailing list