From a887b41875d00637064294be7059335599937f17 Mon Sep 17 00:00:00 2001 From: 卜部昌平 Date: Tue, 16 Jul 2024 04:32:19 +0200 Subject: static const char *type_name() implemented The function body was missing. --- gc/default.c | 35 ++++++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) (limited to 'gc') diff --git a/gc/default.c b/gc/default.c index ee200c9601..4bb4e7cba6 100644 --- a/gc/default.c +++ b/gc/default.c @@ -7558,7 +7558,40 @@ rb_gc_impl_during_gc_p(void *objspace_ptr) #if RGENGC_PROFILE >= 2 -static const char *type_name(int type, VALUE obj); +static const char* +type_name(int type, VALUE obj) +{ + switch ((enum ruby_value_type)type) { + case RUBY_T_NONE: return "T_NONE"; + case RUBY_T_OBJECT: return "T_OBJECT"; + case RUBY_T_CLASS: return "T_CLASS"; + case RUBY_T_MODULE: return "T_MODULE"; + case RUBY_T_FLOAT: return "T_FLOAT"; + case RUBY_T_STRING: return "T_STRING"; + case RUBY_T_REGEXP: return "T_REGEXP"; + case RUBY_T_ARRAY: return "T_ARRAY"; + case RUBY_T_HASH: return "T_HASH"; + case RUBY_T_STRUCT: return "T_STRUCT"; + case RUBY_T_BIGNUM: return "T_BIGNUM"; + case RUBY_T_FILE: return "T_FILE"; + case RUBY_T_DATA: return "T_DATA"; + case RUBY_T_MATCH: return "T_MATCH"; + case RUBY_T_COMPLEX: return "T_COMPLEX"; + case RUBY_T_RATIONAL: return "T_RATIONAL"; + case RUBY_T_NIL: return "T_NIL"; + case RUBY_T_TRUE: return "T_TRUE"; + case RUBY_T_FALSE: return "T_FALSE"; + case RUBY_T_SYMBOL: return "T_SYMBOL"; + case RUBY_T_FIXNUM: return "T_FIXNUM"; + case RUBY_T_UNDEF: return "T_UNDEF"; + case RUBY_T_IMEMO: return "T_IMEMO"; + case RUBY_T_NODE: return "T_NODE"; + case RUBY_T_ICLASS: return "T_ICLASS"; + case RUBY_T_ZOMBIE: return "T_ZOMBIE"; + case RUBY_T_MOVED: return "T_MOVED"; + default: return "unknown"; + } +} static void gc_count_add_each_types(VALUE hash, const char *name, const size_t *types) -- cgit v1.2.3