Another error thrown from within an SCM_CRITICAL_SECTION_START,
(define vv (make-vtable-vtable "" 0))
(define v (make-struct vv 0 (make-struct-layout "uw")))
(make-struct v 0 'x)
=> abort
scm_make_struct has a critical section around the struct
initialization, but when scm_struct_init tries to convert the symbol
'x (an initializer) with scm_to_ulong for the "u" type field, an error
can be thrown.
Anyone know why there's a critical section there? Was it to stop
signal handlers in the past seeing half-initialized data? Can it be
safely done outside a section now? I'm guessing yes. The gc won't
mind seeing garbage in SCMs fields in the data array, will it?
_______________________________________________
Guile-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/guile-devel