diff options
-rw-r--r-- | libguile/struct.h | 6 | ||||
-rw-r--r-- | module/oop/goops.scm | 5 |
2 files changed, 7 insertions, 4 deletions
diff --git a/libguile/struct.h b/libguile/struct.h index 53ef4befe..66c1740d7 100644 --- a/libguile/struct.h +++ b/libguile/struct.h @@ -61,6 +61,7 @@ "pw" /* printer */ \ "ph" /* name (hidden from make-struct for back-compat reasons) */ \ "uh" /* size */ \ + "uh" /* reserved */ \ "uh" /* reserved */ #define scm_vtable_index_layout 0 /* A symbol describing the physical arrangement of this type. */ @@ -69,8 +70,9 @@ #define scm_vtable_index_instance_printer 3 /* A printer for this struct type. */ #define scm_vtable_index_name 4 /* Name of this vtable. */ #define scm_vtable_index_size 5 /* Number of fields, for simple structs. */ -#define scm_vtable_index_reserved_7 6 -#define scm_vtable_offset_user 7 /* Where do user fields start in the vtable? */ +#define scm_vtable_index_reserved_6 6 +#define scm_vtable_index_reserved_7 7 +#define scm_vtable_offset_user 8 /* Where do user fields start in the vtable? */ /* All applicable structs have the following fields. */ #define SCM_APPLICABLE_BASE_LAYOUT \ diff --git a/module/oop/goops.scm b/module/oop/goops.scm index bd5cc7522..4bde684e7 100644 --- a/module/oop/goops.scm +++ b/module/oop/goops.scm @@ -190,7 +190,8 @@ (print) (name #:class <protected-hidden-slot>) (nfields #:class <hidden-slot>) - (%reserved #:class <hidden-slot>) + (%reserved-6 #:class <hidden-slot>) + (%reserved-7 #:class <hidden-slot>) (direct-supers) (direct-slots) (direct-subclasses) @@ -739,7 +740,7 @@ followed by its associated value. If @var{l} does not hold a value for (define (read-only-slot? slot) #f) (define (unboxed-slot? slot) (memq (%slot-definition-name slot) - '(flags instance-finalizer nfields %reserved))) + '(flags instance-finalizer nfields %reserved-6 %reserved-7))) (define (allocate-slots class slots) "Transform the computed list of direct slot definitions @var{slots} |