mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 11:50:28 +02:00
Merge commit '04795a1cb2
' into vm-check
This commit is contained in:
commit
798e66ab10
3 changed files with 6 additions and 7 deletions
|
@ -159,7 +159,7 @@ SCM scm_class_scm;
|
||||||
SCM scm_class_int, scm_class_float, scm_class_double;
|
SCM scm_class_int, scm_class_float, scm_class_double;
|
||||||
|
|
||||||
SCM *scm_port_class = 0;
|
SCM *scm_port_class = 0;
|
||||||
SCM *scm_smob_class = 0;
|
SCM scm_smob_class[SCM_I_MAX_SMOB_TYPE_COUNT];
|
||||||
|
|
||||||
SCM scm_no_applicable_method;
|
SCM scm_no_applicable_method;
|
||||||
|
|
||||||
|
@ -2727,7 +2727,6 @@ create_smob_classes (void)
|
||||||
{
|
{
|
||||||
long i;
|
long i;
|
||||||
|
|
||||||
scm_smob_class = scm_malloc (SCM_I_MAX_SMOB_TYPE_COUNT * sizeof (SCM));
|
|
||||||
for (i = 0; i < SCM_I_MAX_SMOB_TYPE_COUNT; ++i)
|
for (i = 0; i < SCM_I_MAX_SMOB_TYPE_COUNT; ++i)
|
||||||
scm_smob_class[i] = 0;
|
scm_smob_class[i] = 0;
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#ifndef SCM_GOOPS_H
|
#ifndef SCM_GOOPS_H
|
||||||
#define SCM_GOOPS_H
|
#define SCM_GOOPS_H
|
||||||
|
|
||||||
/* Copyright (C) 1998,1999,2000,2001,2002,2003, 2006, 2008 Free Software Foundation, Inc.
|
/* Copyright (C) 1998,1999,2000,2001,2002,2003, 2006, 2008, 2009 Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
* This library is free software; you can redistribute it and/or
|
* This library is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU Lesser General Public
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
@ -171,7 +171,7 @@ SCM_API SCM scm_class_integer;
|
||||||
SCM_API SCM scm_class_fraction;
|
SCM_API SCM scm_class_fraction;
|
||||||
SCM_API SCM scm_class_unknown;
|
SCM_API SCM scm_class_unknown;
|
||||||
SCM_API SCM *scm_port_class;
|
SCM_API SCM *scm_port_class;
|
||||||
SCM_API SCM *scm_smob_class;
|
SCM_API SCM scm_smob_class[];
|
||||||
SCM_API SCM scm_class_top;
|
SCM_API SCM scm_class_top;
|
||||||
SCM_API SCM scm_class_object;
|
SCM_API SCM scm_class_object;
|
||||||
SCM_API SCM scm_class_class;
|
SCM_API SCM scm_class_class;
|
||||||
|
|
|
@ -309,7 +309,7 @@ scm_make_smob_type (char const *name, size_t size)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Make a class object if Goops is present. */
|
/* Make a class object if Goops is present. */
|
||||||
if (scm_smob_class)
|
if (SCM_UNPACK (scm_smob_class[0]) != 0)
|
||||||
scm_smob_class[new_smob] = scm_make_extended_class (name, 0);
|
scm_smob_class[new_smob] = scm_make_extended_class (name, 0);
|
||||||
|
|
||||||
return scm_tc7_smob + new_smob * 256;
|
return scm_tc7_smob + new_smob * 256;
|
||||||
|
@ -450,7 +450,7 @@ scm_set_smob_apply (scm_t_bits tc, SCM (*apply) (),
|
||||||
scm_smobs[SCM_TC2SMOBNUM (tc)].apply_3 = apply_3;
|
scm_smobs[SCM_TC2SMOBNUM (tc)].apply_3 = apply_3;
|
||||||
scm_smobs[SCM_TC2SMOBNUM (tc)].gsubr_type = type;
|
scm_smobs[SCM_TC2SMOBNUM (tc)].gsubr_type = type;
|
||||||
|
|
||||||
if (scm_smob_class)
|
if (SCM_UNPACK (scm_smob_class[0]) != 0)
|
||||||
scm_i_inherit_applicable (scm_smob_class[SCM_TC2SMOBNUM (tc)]);
|
scm_i_inherit_applicable (scm_smob_class[SCM_TC2SMOBNUM (tc)]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue