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

yamaken at freedesktop.org yamaken at freedesktop.org
Sun Oct 2 07:19:30 PDT 2005


Author: yamaken
Date: 2005-10-02 07:19:28 -0700 (Sun, 02 Oct 2005)
New Revision: 1736

Modified:
   branches/r5rs/sigscheme/eval.c
   branches/r5rs/sigscheme/sigschemetype.h
Log:
* This commit makes SCM_RETTYPE_NEED_CALL_AS_IS obsolete

* sigscheme/sigschemetype.h
  - (enum ScmReturnType): Remove SCM_RETTYPE_NEED_CALL_AS_IS
* sigscheme/eval.c
  - (ScmOp_eval): Remove SCM_RETTYPE_NEED_CALL_AS_IS handlings


Modified: branches/r5rs/sigscheme/eval.c
===================================================================
--- branches/r5rs/sigscheme/eval.c	2005-10-02 14:13:06 UTC (rev 1735)
+++ branches/r5rs/sigscheme/eval.c	2005-10-02 14:19:28 UTC (rev 1736)
@@ -461,7 +461,6 @@
 {
     ScmObj ret  = SCM_NULL;
     ScmEvalState state = {0};
-    int suppress_eval = 0;
 
 #if SCM_DEBUG
     struct trace_frame frame;
@@ -485,20 +484,9 @@
         break;
 
     case ScmCons:
-        suppress_eval = 0;
-    call_loop:
-        state.ret_type = SCM_RETTYPE_AS_IS;
-        obj = call(CAR(obj), CDR(obj), &state, suppress_eval);
-        switch (state.ret_type) {
-        case SCM_RETTYPE_NEED_EVAL:
-            suppress_eval = 0;
+        obj = call(CAR(obj), CDR(obj), &state, 0);
+        if (state.ret_type == SCM_RETTYPE_NEED_EVAL)
             goto eval_loop;
-        case SCM_RETTYPE_NEED_CALL_AS_IS:
-            suppress_eval = 1;
-            goto call_loop;
-        default:
-            break;
-        }
         /* FALLTHROUGH */
     default:
         ret = obj;

Modified: branches/r5rs/sigscheme/sigschemetype.h
===================================================================
--- branches/r5rs/sigscheme/sigschemetype.h	2005-10-02 14:13:06 UTC (rev 1735)
+++ branches/r5rs/sigscheme/sigschemetype.h	2005-10-02 14:19:28 UTC (rev 1736)
@@ -195,8 +195,7 @@
 
 enum ScmReturnType {
     SCM_RETTYPE_AS_IS           = 0,
-    SCM_RETTYPE_NEED_EVAL       = 1,
-    SCM_RETTYPE_NEED_CALL_AS_IS = 2
+    SCM_RETTYPE_NEED_EVAL       = 1
 };
 
 /* The evaluator's state */



More information about the uim-commit mailing list