1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-30 11:50:28 +02:00

* stacks.h: Bugfix: Don't use tail-array length field as stack

length field!  This screwed up GC.
This commit is contained in:
Mikael Djurfeldt 1996-10-30 00:16:45 +00:00
parent 3027db9d22
commit 3119346c3f

View file

@ -61,11 +61,12 @@ typedef struct scm_info_frame {
#define SCM_FRAME_N_SLOTS (sizeof (scm_info_frame) / sizeof (SCM)) #define SCM_FRAME_N_SLOTS (sizeof (scm_info_frame) / sizeof (SCM))
#define SCM_STACK(obj) ((scm_stack *) SCM_STRUCT_DATA (obj)) #define SCM_STACK(obj) ((scm_stack *) SCM_STRUCT_DATA (obj))
#define SCM_STACK_LAYOUT "pwuopW" #define SCM_STACK_LAYOUT "pwuourpW"
typedef struct scm_stack { typedef struct scm_stack {
SCM id; /* Stack id */ SCM id; /* Stack id */
scm_info_frame *frames; /* Info frames */ scm_info_frame *frames; /* Info frames */
unsigned int length; /* Stack length */ unsigned int length; /* Stack length */
unsigned int tail_length;
scm_info_frame tail[1]; scm_info_frame tail[1];
} scm_stack; } scm_stack;