[前][次][番号順一覧][スレッド一覧]

ruby-changes:38702

From: ko1 <ko1@a...>
Date: Fri, 5 Jun 2015 22:40:18 +0900 (JST)
Subject: [ruby-changes:38702] ko1:r50783 (trunk): * class.c (ins_methods_push): change 3rd parameter's type

ko1	2015-06-05 22:39:59 +0900 (Fri, 05 Jun 2015)

  New Revision: 50783

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=50783

  Log:
    * class.c (ins_methods_push): change 3rd parameter's type
      from long to rb_method_visibility_t.
    * class.c (ins_methods_i): catch up this fix.
    * class.c (method_entry_i): cast to st_data_t instead of `long'.

  Modified files:
    trunk/ChangeLog
    trunk/class.c
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 50782)
+++ ChangeLog	(revision 50783)
@@ -1,3 +1,12 @@ https://github.com/ruby/ruby/blob/trunk/ChangeLog#L1
+Fri Jun  5 22:37:42 2015  Koichi Sasada  <ko1@a...>
+
+	* class.c (ins_methods_push): change 3rd parameter's type
+	  from long to rb_method_visibility_t.
+
+	* class.c (ins_methods_i): catch up this fix.
+
+	* class.c (method_entry_i): cast to st_data_t instead of `long'.
+
 Fri Jun  5 20:37:10 2015  Koichi Sasada  <ko1@a...>
 
 	* internal.h: move definition of rb_cref_t to method.h.
Index: class.c
===================================================================
--- class.c	(revision 50782)
+++ class.c	(revision 50783)
@@ -1065,11 +1065,11 @@ rb_mod_ancestors(VALUE mod) https://github.com/ruby/ruby/blob/trunk/class.c#L1065
 }
 
 static int
-ins_methods_push(ID name, long type, VALUE ary, long visi)
+ins_methods_push(ID name, long type, VALUE ary, rb_method_visibility_t visi)
 {
     if (type == METHOD_VISI_UNDEF) return ST_CONTINUE;
 
-    switch ((rb_method_visibility_t)visi) {
+    switch (visi) {
       case METHOD_VISI_UNDEF:
 	return ST_CONTINUE;
       case METHOD_VISI_PRIVATE:
@@ -1090,7 +1090,7 @@ ins_methods_push(ID name, long type, VAL https://github.com/ruby/ruby/blob/trunk/class.c#L1090
 static int
 ins_methods_i(st_data_t name, st_data_t type, st_data_t ary)
 {
-    return ins_methods_push((ID)name, (long)type, (VALUE)ary, -1); /* everything but private */
+    return ins_methods_push((ID)name, (rb_method_visibility_t)type, (VALUE)ary, -1); /* everything but private */
 }
 
 static int
@@ -1136,7 +1136,7 @@ method_entry_i(st_data_t key, st_data_t https://github.com/ruby/ruby/blob/trunk/class.c#L1136
 	else {
 	    type = me->def->flags.visi;
 	}
-	st_add_direct(arg->list, key, (long)type);
+	st_add_direct(arg->list, key, (st_data_t)type);
     }
     return ST_CONTINUE;
 }

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]