This is the mail archive of the
guile@sourceware.cygnus.com
mailing list for the Guile project.
scm_cell, SCM_VELTS etc.
- To: Guile Mailing List <guile at sourceware dot cygnus dot com>
- Subject: scm_cell, SCM_VELTS etc.
- From: Dirk Herrmann <dirk at ida dot ing dot tu-bs dot de>
- Date: Tue, 9 May 2000 19:24:29 +0200 (MEST)
Hello!
Currently, scm_cell consists of two SCM values. For consistency, I
suggest to define scm_cell as follows:
typedef struct scm_cell
{
scm_bits_t word_0;
scm_bits_t word_1;
} scm_cell;
The reason is that cell elements may or may not contain valid SCM
values. Surprisingly, you can just replace guile's current definition of
scm_cell with the above one: Everything works fine, because cell acesses
are already only done via the SCM_CELL... macros.
The point about SCM_VELTS is quite similar: SCM_VELTS returns a SCM*
pointer, but only for real scheme vectors the values are actually SCM
values. Uniform vectors also use SCM_VELTS, but then cast the pointer to
something else. So, what are the plans for uniform vectors anyway? I
seem to remember they were to be transformed into smobs?
Best regards
Dirk Herrmann