Hi Camm. | > Following your overnight advice I set base in unexnt.c to | > DBEGIN+PAGESIZE*500 rather than DBEGIN which puts DBEGIN below the | > DBEGIN+start | > of the heap sufficiently to avoid that early call to GBC. | > | | Great! | | > raw_pre_gcl.exe then barfs in the first find_package due to | a problem | > in the check_package_designator() macro. | > | | I've seen this before too, but have forgotten the cause. It | is simple if memory serves.
Would you agee that the sequence below is wrong, specifically the part where set_type_of alters the value of *(object*) obj. The new value of 0x80090000 is above the immediate fixnum configuration constant and so causes the later problem with find_package. ========================================================== Breakpoint 3, alloc_object (t=t_string) at alloc.c:364 364 if ((obj=maybe_alloc_on_stack(tm->tm_size,t))) { (gdb) s 370 CHECK_INTERRUPT; (gdb) n 372 obj = tm->tm_free; (gdb) n 373 if (obj == OBJNULL) { (gdb) n 389 tm->tm_free = OBJ_LINK(obj); (gdb) s 390 --(tm->tm_nfree); (gdb) obj->c.c_cdr Undefined command: "obj-". Try "help". (gdb) p obj->c.c_cdr $1 = 0xa0170000 (gdb) p *(object *) obj $2 = 0xa0170000 (gdb) n 391 (tm->tm_nused)++; (gdb) n 392 set_type_of(obj,t);/*FIXME try removing this*/ (gdb) s 393 return(obj); (gdb) p *(object *) obj $3 = 0x80090000 (gdb) p obj->c.c_cdr $4 = 0x80090000 (gdb) ========================================================== Cheers Mike Thomas _______________________________________________ Gcl-devel mailing list Gcl-devel@gnu.org http://lists.gnu.org/mailman/listinfo/gcl-devel