This is the mail archive of the guile@sourceware.cygnus.com mailing list for the Guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

scm_cell, SCM_VELTS etc.


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]