summaryrefslogtreecommitdiff
path: root/libguile/struct.h
diff options
context:
space:
mode:
authorMikael Djurfeldt <djurfeldt@nada.kth.se>2000-03-11 15:10:16 +0000
committerMikael Djurfeldt <djurfeldt@nada.kth.se>2000-03-11 15:10:16 +0000
commita54367e2da2c8c16048a8979e7095fc602135e92 (patch)
tree270fa0886551ee4c3af2d5880d800fe18834627e /libguile/struct.h
parent9374451b7ea211b27b122456c4a4f0568b721c49 (diff)
downloadguile-a54367e2da2c8c16048a8979e7095fc602135e92.tar.gz
* objects.h (SCM_CLASS_FLAGS, SCM_OBJ_CLASS_FLAGS,
SCM_SET_CLASS_INSTANCE_SIZE), struct.h (SCM_STRUCT_VTABLE_DATA), proc.h (SCM_CLOSCAR): SCM_ASSCM/WORD fixes.
Diffstat (limited to 'libguile/struct.h')
-rw-r--r--libguile/struct.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/libguile/struct.h b/libguile/struct.h
index 38b7c9235..d3c388d83 100644
--- a/libguile/struct.h
+++ b/libguile/struct.h
@@ -2,7 +2,7 @@
#ifndef STRUCTH
#define STRUCTH
-/* Copyright (C) 1995, 1997, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1995, 1997, 1999, 2000 Free Software Foundation, Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -79,7 +79,7 @@ typedef scm_sizet (*scm_struct_free_t) (SCM *vtable, SCM *data);
#define SCM_STRUCTP(X) (SCM_NIMP(X) && (SCM_TYP3(X) == scm_tc3_cons_gloc))
#define SCM_STRUCT_DATA(X) ((SCM*)(SCM_CDR(X)))
-#define SCM_STRUCT_VTABLE_DATA(X) ((SCM *)(SCM_CAR(X) - 1))
+#define SCM_STRUCT_VTABLE_DATA(X) ((SCM *)(SCM_ASWORD (SCM_CAR(X)) - 1))
#define SCM_STRUCT_LAYOUT(X) (SCM_STRUCT_VTABLE_DATA(X)[scm_vtable_index_layout])
#define SCM_STRUCT_VTABLE(X) (SCM_STRUCT_VTABLE_DATA(X)[scm_vtable_index_vtable])
#define SCM_STRUCT_PRINTER(X) (SCM_STRUCT_VTABLE_DATA(X)[scm_vtable_index_printer])