guile-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

guile/guile-core/libguile ChangeLog goops.c goo...


From: Dirk Herrmann
Subject: guile/guile-core/libguile ChangeLog goops.c goo...
Date: Thu, 21 Dec 2000 09:07:39 -0800

CVSROOT:        /cvs
Module name:    guile
Changes by:     Dirk Herrmann <address@hidden>  00/12/21 09:07:38

Modified files:
        guile-core/libguile: ChangeLog goops.c goops.h 

Log message:
        * Simplify the use of SCM_PUREGENERICP.

CVSWeb URLs:
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-core/libguile/ChangeLog.diff?r1=1.1214&r2=1.1215
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-core/libguile/goops.c.diff?r1=1.11&r2=1.12
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-core/libguile/goops.h.diff?r1=1.6&r2=1.7

Patches:
Index: guile/guile-core/libguile/ChangeLog
diff -u guile/guile-core/libguile/ChangeLog:1.1214 
guile/guile-core/libguile/ChangeLog:1.1215
--- guile/guile-core/libguile/ChangeLog:1.1214  Wed Dec 20 14:27:09 2000
+++ guile/guile-core/libguile/ChangeLog Thu Dec 21 09:07:37 2000
@@ -1,3 +1,10 @@
+2000-12-21  Dirk Herrmann  <address@hidden>
+
+       * goops.h (SCM_PUREGENERICP):  Include the SCM_STRUCTP test.
+
+       * goops.c (scm_sys_invalidate_method_cache_x, scm_m_atdispatch,
+       scm_pure_generic_p):  The SCM_STRUCTP test is implied.
+
 2000-12-20  Gary Houston  <address@hidden>
 
        * continuations.c (continuation_apply): subtract the length of
Index: guile/guile-core/libguile/goops.c
diff -u guile/guile-core/libguile/goops.c:1.11 
guile/guile-core/libguile/goops.c:1.12
--- guile/guile-core/libguile/goops.c:1.11      Mon Dec 18 09:36:44 2000
+++ guile/guile-core/libguile/goops.c   Thu Dec 21 09:07:38 2000
@@ -1555,8 +1555,7 @@
 #define FUNC_NAME s_scm_sys_invalidate_method_cache_x
 {
   SCM used_by;
-  SCM_ASSERT (SCM_STRUCTP (gf) && SCM_PUREGENERICP (gf),
-             gf, SCM_ARG1, FUNC_NAME);
+  SCM_ASSERT (SCM_PUREGENERICP (gf), gf, SCM_ARG1, FUNC_NAME);
   used_by = SCM_SLOT (gf, scm_si_used_by);
   if (SCM_NFALSEP (used_by))
     {
@@ -1891,8 +1890,7 @@
   SCM_ASSYNT (SCM_VECTORP (v), v, SCM_ARG3, s_atdispatch);
   x = SCM_CDR (x);
   gf = SCM_XEVALCAR (x, env);
-  SCM_ASSYNT (SCM_STRUCTP (gf) && SCM_PUREGENERICP (gf),
-             gf, SCM_ARG4, s_atdispatch);
+  SCM_ASSYNT (SCM_PUREGENERICP (gf), gf, SCM_ARG4, s_atdispatch);
   return SCM_LIST5 (SCM_IM_DISPATCH, args, n, v, gf);
 }
 #undef FUNC_NAME
@@ -2601,7 +2599,7 @@
            "")
 #define FUNC_NAME s_scm_pure_generic_p
 {
-  return SCM_BOOL (SCM_STRUCTP (obj) && SCM_PUREGENERICP (obj));
+  return SCM_BOOL (SCM_PUREGENERICP (obj));
 }
 #undef FUNC_NAME
 
Index: guile/guile-core/libguile/goops.h
diff -u guile/guile-core/libguile/goops.h:1.6 
guile/guile-core/libguile/goops.h:1.7
--- guile/guile-core/libguile/goops.h:1.6       Sat Dec 16 12:25:08 2000
+++ guile/guile-core/libguile/goops.h   Thu Dec 21 09:07:38 2000
@@ -125,11 +125,12 @@
  (SCM_UNPACK (SCM_STRUCT_DATA (x)[scm_struct_i_n_words]) \
   - scm_struct_n_extra_words) \
 
-#define SCM_INSTANCEP(x)       (SCM_STRUCTP (x) \
-                              && (SCM_INST_TYPE (x) & SCM_CLASSF_GOOPS))
+#define SCM_INSTANCEP(x) \
+  (SCM_STRUCTP (x) && (SCM_INST_TYPE (x) & SCM_CLASSF_GOOPS))
 #define SCM_VALIDATE_INSTANCE(pos, x) SCM_MAKE_VALIDATE (pos, x, INSTANCEP)
 
-#define SCM_PUREGENERICP(x)    (SCM_INST_TYPE(x) & SCM_CLASSF_PURE_GENERIC)
+#define SCM_PUREGENERICP(x) \
+  (SCM_STRUCTP (x) && (SCM_INST_TYPE(x) & SCM_CLASSF_PURE_GENERIC))
 #define SCM_SIMPLEMETHODP(x)   (SCM_INST_TYPE(x) & SCM_CLASSF_SIMPLE_METHOD)
 #define SCM_ACCESSORP(x)       (SCM_INST_TYPE(x) & SCM_CLASSF_ACCESSOR_METHOD)
 #define SCM_VALIDATE_ACCESSOR(pos, x) SCM_MAKE_VALIDATE (pos, x, ACCESSORP)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]