unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* make-struct critical section throw
@ 2007-02-12 20:03 Kevin Ryde
  0 siblings, 0 replies; only message in thread
From: Kevin Ryde @ 2007-02-12 20:03 UTC (permalink / raw)
  To: guile-devel

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
Guile-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/guile-devel


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2007-02-12 20:03 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-02-12 20:03 make-struct critical section throw Kevin Ryde

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).