diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-07-07 08:28:19 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-07-07 08:28:19 +0000 |
commit | 3de67ca69de67a67e564458e66dc962064fd4f42 (patch) | |
tree | 4e05791ac0538d23d0a43cbd9e78eb6e2428108c /gc.c | |
parent | 444d4435ba78fdb15f136cbb1d3c8e71c87ad559 (diff) |
* eval.c (rb_call_super): k->super maybe NULL if klass is Kernel.
[ruby-dev:20519]
* gc.c (obj_free): clear method cache when freeing class/module.
* eval.c (rb_mod_remove_method): allow "remove_method" to accept
multiple arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'gc.c')
-rw-r--r-- | gc.c | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -1057,6 +1057,7 @@ obj_free(obj) break; case T_MODULE: case T_CLASS: + rb_clear_cache_by_class((VALUE)obj); st_free_table(RANY(obj)->as.klass.m_tbl); if (RANY(obj)->as.object.iv_tbl) { st_free_table(RANY(obj)->as.object.iv_tbl); |