* goops.c, goops.h (scm_sys_pre_expand_closure_x): Removed.
authorMikael Djurfeldt <djurfeldt@nada.kth.se>
Sun, 4 Mar 2001 20:46:04 +0000 (20:46 +0000)
committerMikael Djurfeldt <djurfeldt@nada.kth.se>
Sun, 4 Mar 2001 20:46:04 +0000 (20:46 +0000)
(scm_sys_tag_body): Added.

libguile/ChangeLog
libguile/goops.c
libguile/goops.h

index 83d8634..2d1c80d 100644 (file)
@@ -1,3 +1,8 @@
+2001-03-04  Mikael Djurfeldt  <mdj@linnaeus.mit.edu>
+
+       * goops.c, goops.h (scm_sys_pre_expand_closure_x): Removed.
+       (scm_sys_tag_body): Added.
+
 2001-03-04  Dirk Herrmann  <D.Herrmann@tu-bs.de>
 
        * continuations.c (continuation_apply), eval.c (scm_m_lambda,
index e4dff3d..f3250c2 100644 (file)
@@ -934,21 +934,12 @@ SCM_DEFINE (scm_accessor_method_slot_definition, "accessor-method-slot-definitio
 }
 #undef FUNC_NAME
 
-SCM_DEFINE (scm_sys_pre_expand_closure_x, "%pre-expand-closure!", 1, 0, 0,
-           (SCM closure),
+SCM_DEFINE (scm_sys_tag_body, "%tag-body", 1, 0, 0,
+           (SCM body),
            "Internal GOOPS magic---don't use this function!")
-#define FUNC_NAME s_scm_sys_pre_expand_closure_x
-{
-  SCM formals, code, env;
-  SCM_VALIDATE_CLOSURE (1, closure);
-  formals = SCM_CAR (SCM_CODE (closure));
-  env = SCM_EXTEND_ENV (formals, formals, SCM_ENV (closure));
-  code = SCM_CDR (SCM_CODE (closure));
-  while (SCM_NNULLP (SCM_CDR (code))
-        && SCM_IMP (SCM_CAR (code))
-        && SCM_ISYMP (SCM_CAR (code)))
-    code = scm_m_expand_body (code, env);
-  return closure;
+#define FUNC_NAME s_scm_sys_tag_body
+{
+  return scm_cons (SCM_IM_LAMBDA, body);
 }
 #undef FUNC_NAME
 
index a443d4c..069fbfb 100644 (file)
@@ -258,7 +258,7 @@ SCM scm_method_generic_function (SCM obj);
 SCM scm_method_specializers (SCM obj); 
 SCM scm_method_procedure (SCM obj); 
 SCM scm_accessor_method_slot_definition (SCM obj);
-SCM scm_sys_pre_expand_closure_x (SCM closure);
+SCM scm_sys_tag_body (SCM body);
 SCM scm_sys_fast_slot_ref (SCM obj, SCM index); 
 SCM scm_sys_fast_slot_set_x (SCM obj, SCM index, SCM value); 
 SCM scm_slot_ref_using_class (SCM cls, SCM obj, SCM slot_name);