Modified make_cons and make_frame to illustrate the pattern I

want to apply generally. This does not compile!
This commit is contained in:
Simon Brooke 2026-04-20 23:21:30 +01:00
parent 6148d3699f
commit aa5b34368e
6 changed files with 145 additions and 21 deletions

View file

@ -69,17 +69,16 @@ struct pso_pointer allocate( struct pso4 *stack_pointer, char *tag,
struct pso_pointer result = pop_freelist( size_class );
if ( !nilp( result ) ) {
strncpy( ( char * ) ( pointer_to_object( result )->header.tag.bytes.
mnemonic ), tag, TAGLENGTH );
strncpy( ( char * ) ( pointer_to_object( result )->header.tag.
bytes.mnemonic ), tag, TAGLENGTH );
debug_printf( DEBUG_ALLOC, 0, L"at page %d, offset %d... ",
result.page, result.offset );
if ( stack_pointer != NULL &&
( stack_pointer->header.tag.value & 0xffffff ) == STACKTV ) {
struct pso_pointer locals = make_cons( result,
stack_pointer->
payload.stack_frame.
locals );
stack_pointer->payload.
stack_frame.locals );
stack_pointer->payload.stack_frame.locals = locals;
} else if ( memory_initialised ) {