--- a/src/racket/gc2/backtrace.c +++ a/src/racket/gc2/backtrace.c @@ -45,7 +45,7 @@ static void *print_out_pointer(const char *prefix, void *p, trace_page_t *page; const char *what; - page = pagemap_find_page(GC->page_maps, p); + page = pagemap_find_page(GC_instance->page_maps, p); if (!page || (trace_page_type(page) == TRACE_PAGE_BAD)) { GCPRINT(GCOUTF, "%s??? %p\n", prefix, p); return NULL; @@ -94,7 +94,7 @@ static void print_traced_objects(int path_length_limit, GC_print_tagged_value_proc print_tagged_value) { int i; - GC->dumping_avoid_collection++; + GC_instance->dumping_avoid_collection++; GCPRINT(GCOUTF, "Begin Trace\n"); for (i = 0; i < found_object_count; i++) { void *p; @@ -107,5 +107,5 @@ static void print_traced_objects(int path_length_limit, } } GCPRINT(GCOUTF, "End Trace\n"); - --GC->dumping_avoid_collection; + --GC_instance->dumping_avoid_collection; } --- a/src/racket/gc2/newgc.c +++ a/src/racket/gc2/newgc.c @@ -1332,7 +1332,7 @@ static void backtrace_new_page(NewGC *gc, mpage *page) static void free_backtrace(mpage *page) { if (page->backtrace) - free_pages(GC, page->backtrace, APAGE_SIZE); + free_pages(GC_instance, page->backtrace, APAGE_SIZE); } static void *bt_source;