From e8841fbf5824a32e1983c7635e6e9a7be8f9b51d Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Sun, 3 Sep 2023 23:03:50 +0900 Subject: [PATCH] gc.h: move mrb_heap_page definition to gc.c --- include/mruby/gc.h | 13 ++----------- src/gc.c | 9 +++++++++ 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/include/mruby/gc.h b/include/mruby/gc.h index 17280a19f..7f40ca64a 100644 --- a/include/mruby/gc.h +++ b/include/mruby/gc.h @@ -41,22 +41,13 @@ typedef enum { #pragma warning(disable : 4200) #endif -typedef struct mrb_heap_page { - struct RBasic *freelist; - struct mrb_heap_page *prev; - struct mrb_heap_page *next; - mrb_bool old:1; - /* Flexible array members area a C99 feature, not C++ compatible */ - /* void* objects[]; */ -} mrb_heap_page; - #ifdef _MSC_VER #pragma warning(pop) #endif typedef struct mrb_gc { - mrb_heap_page *heaps; /* heaps for GC */ - mrb_heap_page *sweeps; /* page where sweep starts */ + struct mrb_heap_page *heaps; /* heaps for GC */ + struct mrb_heap_page *sweeps; /* page where sweep starts */ struct RBasic *gray_list; /* list of gray objects to be traversed incrementally */ struct RBasic *atomic_gray_list; /* list of objects to be traversed atomically */ size_t live; /* count of live objects */ diff --git a/src/gc.c b/src/gc.c index 66626d20c..fdec9287f 100644 --- a/src/gc.c +++ b/src/gc.c @@ -148,6 +148,15 @@ typedef struct { #define MRB_HEAP_PAGE_SIZE 1024 #endif +typedef struct mrb_heap_page { + struct RBasic *freelist; + struct mrb_heap_page *prev; + struct mrb_heap_page *next; + mrb_bool old:1; + /* Flexible array members area a C99 feature, not C++ compatible */ + /* void* objects[]; */ +} mrb_heap_page; + #define GC_STEP_SIZE 1024 /* white: 001 or 010, black: 100, gray: 000, red:111 */