* class.c (rb_prepend_module): need a WB for klass -> origin.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49875 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
ko1 2015-03-06 13:51:27 +00:00
Родитель d84f9b1694
Коммит 9113098e65
2 изменённых файлов: 5 добавлений и 1 удалений

Просмотреть файл

@ -1,3 +1,7 @@
Fri Mar 6 22:50:36 2015 Koichi Sasada <ko1@atdot.net>
* class.c (rb_prepend_module): need a WB for klass -> origin.
Fri Mar 6 20:18:38 2015 Koichi Sasada <ko1@atdot.net>
* fix namespace issue on singleton class expressions. [Bug #10943]

Просмотреть файл

@ -939,7 +939,7 @@ rb_prepend_module(VALUE klass, VALUE module)
OBJ_WB_UNPROTECT(origin); /* TODO: conservative shading. Need more survey. */
RCLASS_SET_SUPER(origin, RCLASS_SUPER(klass));
RCLASS_SET_SUPER(klass, origin);
RCLASS_ORIGIN(klass) = origin;
RB_OBJ_WRITE(klass, &RCLASS_ORIGIN(klass), origin);
RCLASS_M_TBL(origin) = RCLASS_M_TBL(klass);
RCLASS_M_TBL_INIT(klass);
st_foreach(RCLASS_M_TBL(origin), move_refined_method,