1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-30 03:40:34 +02:00

add SCM_HEAP_OBJECT_P

* libguile/tags.h (SCM_HEAP_OBJECT_P): New macro, an alias for
  SCM_NIMP.

* libguile/arrays.c:
* libguile/debug.c:
* libguile/foreign.c:
* libguile/gdbint.c:
* libguile/guardians.c:
* libguile/list.c:
* libguile/modules.c:
* libguile/options.c:
* libguile/smob.c:
* libguile/validate.h:
* libguile/weak-set.c:
* libguile/weak-table.c:
* libguile/weak-vector.c: Use it instead of SCM_NIMP or !SCM_IMP.
This commit is contained in:
Andy Wingo 2011-10-24 18:13:51 +02:00
parent fdecb44f32
commit 8c5bb72920
14 changed files with 26 additions and 32 deletions

View file

@ -144,16 +144,9 @@ SCM_DEFINE (scm_procedure_source, "procedure-source", 1, 0, 0,
if (scm_is_true (src))
return src;
switch (SCM_TYP7 (proc)) {
case scm_tcs_struct:
if (!SCM_STRUCT_APPLICABLE_P (proc)
|| SCM_IMP (SCM_STRUCT_PROCEDURE (proc)))
break;
proc = SCM_STRUCT_PROCEDURE (proc);
if (SCM_STRUCTP (proc) && SCM_STRUCT_APPLICABLE_P (proc)
&& SCM_HEAP_OBJECT_P ((proc = SCM_STRUCT_PROCEDURE (proc))))
continue;
default:
break;
}
}
while (0);