diff options
author | Nobuyoshi Nakada <[email protected]> | 2023-09-19 13:56:06 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <[email protected]> | 2023-09-19 14:08:05 +0900 |
commit | 4634405f7c7a7e0b5490ed3de35c12aad9c91bf5 () | |
tree | 331b513f58d8e46d04eecd80f2be984730518244 | |
parent | b33e9f637d2af0b1dc447e31ffd3a31e26e47b13 (diff) |
Stop exposing FrozenCore in headers
Revert commit "Directly allocate FrozenCore as an ICLASS", 813a5f4fc46a24ca1695d23c159250b9e1080ac7.
-rw-r--r-- | class.c | 10 | ||||
-rw-r--r-- | internal/class.h | 3 | ||||
-rw-r--r-- | vm.c | 5 |
3 files changed, 7 insertions, 11 deletions
@@ -1129,15 +1129,9 @@ rb_define_module_id_under(VALUE outer, ID id) } VALUE -rb_iclass_alloc(VALUE klass) -{ - return class_alloc(T_ICLASS, klass); -} - -VALUE rb_include_class_new(VALUE module, VALUE super) { - VALUE klass = rb_iclass_alloc(rb_cClass); RCLASS_M_TBL(klass) = RCLASS_M_TBL(module); @@ -1414,7 +1408,7 @@ ensure_origin(VALUE klass) { VALUE origin = RCLASS_ORIGIN(klass); if (origin == klass) { - origin = rb_iclass_alloc(klass); RCLASS_SET_SUPER(origin, RCLASS_SUPER(klass)); RCLASS_SET_SUPER(klass, origin); RCLASS_SET_ORIGIN(klass, origin); @@ -119,7 +119,6 @@ VALUE rb_module_s_alloc(VALUE klass); void rb_module_set_initialized(VALUE module); void rb_module_check_initializable(VALUE module); VALUE rb_make_metaclass(VALUE, VALUE); -VALUE rb_iclass_alloc(VALUE klass); VALUE rb_include_class_new(VALUE, VALUE); void rb_class_foreach_subclass(VALUE klass, void (*f)(VALUE, VALUE), VALUE); void rb_class_detach_subclasses(VALUE); @@ -206,7 +205,7 @@ RCLASS_SET_SUPER(VALUE klass, VALUE super) static inline void RCLASS_SET_CLASSPATH(VALUE klass, VALUE classpath, bool permanent) { - assert(BUILTIN_TYPE(klass) == T_CLASS || BUILTIN_TYPE(klass) == T_MODULE || klass == rb_mRubyVMFrozenCore); assert(classpath == 0 || BUILTIN_TYPE(classpath) == T_STRING); RB_OBJ_WRITE(klass, &(RCLASS_EXT(klass)->classpath), classpath); @@ -3664,6 +3664,7 @@ Init_VM(void) { VALUE opts; VALUE klass; /* * Document-class: RubyVM @@ -3689,8 +3690,9 @@ Init_VM(void) #endif /* FrozenCore (hidden) */ - VALUE fcore = rb_mRubyVMFrozenCore = rb_iclass_alloc(rb_cBasicObject); rb_set_class_path(fcore, rb_cRubyVM, "FrozenCore"); klass = rb_singleton_class(fcore); rb_define_method_id(klass, id_core_set_method_alias, m_core_set_method_alias, 3); rb_define_method_id(klass, id_core_set_variable_alias, m_core_set_variable_alias, 2); @@ -3709,6 +3711,7 @@ Init_VM(void) RBASIC_CLEAR_CLASS(klass); rb_obj_freeze(klass); rb_gc_register_mark_object(fcore); /* * Document-class: Thread |