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

ruby-changes:25958

From: nobu <ko1@a...>
Date: Fri, 30 Nov 2012 09:45:58 +0900 (JST)
Subject: [ruby-changes:25958] nobu:r38015 (trunk): vm_backtrace.c: RB_GC_GUARD

nobu	2012-11-30 09:38:24 +0900 (Fri, 30 Nov 2012)

  New Revision: 38015

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

  Log:
    vm_backtrace.c: RB_GC_GUARD
    
    * include/ruby/ruby.h (RB_GC_GUARD_PTR): add note.
    * vm_backtrace.c (backtrace_to_str_ary): use RB_GC_GUARD() instead of
      RB_GC_GUARD_PTR() which has no effect.
      (backtrace_to_location_ary): ditto.
      (vm_backtrace_to_ary): ditto.

  Modified files:
    trunk/ChangeLog
    trunk/include/ruby/ruby.h
    trunk/vm_backtrace.c

Index: include/ruby/ruby.h
===================================================================
--- include/ruby/ruby.h	(revision 38014)
+++ include/ruby/ruby.h	(revision 38015)
@@ -512,6 +512,8 @@
 static inline int rb_type(VALUE obj);
 #define TYPE(x) rb_type((VALUE)(x))
 
+/* RB_GC_GUARD_PTR() is an intermediate macro, and has no effect by
+ * itself.  don't use it directly */
 #ifdef __GNUC__
 #define RB_GC_GUARD_PTR(ptr) \
     __extension__ ({volatile VALUE *rb_gc_guarded_ptr = (ptr); rb_gc_guarded_ptr;})
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 38014)
+++ ChangeLog	(revision 38015)
@@ -1,3 +1,12 @@
+Fri Nov 30 09:38:22 2012  Nobuyoshi Nakada  <nobu@r...>
+
+	* include/ruby/ruby.h (RB_GC_GUARD_PTR): add note.
+
+	* vm_backtrace.c (backtrace_to_str_ary): use RB_GC_GUARD() instead of
+	  RB_GC_GUARD_PTR() which has no effect.
+	  (backtrace_to_location_ary): ditto.
+	  (vm_backtrace_to_ary): ditto.
+
 Fri Nov 30 09:22:52 2012  Eric Hodel  <drbrain@s...>
 
 	* lib/rubygems/commands/contents_command.rb:  Sort output from command.
Index: vm_backtrace.c
===================================================================
--- vm_backtrace.c	(revision 38014)
+++ vm_backtrace.c	(revision 38015)
@@ -512,7 +512,7 @@
     }
 
     r = backtrace_collect(bt, lev, n, location_to_str_dmyarg, 0);
-    RB_GC_GUARD_PTR(&self);
+    RB_GC_GUARD(self);
     return r;
 }
 
@@ -559,7 +559,7 @@
     }
 
     r = backtrace_collect(bt, lev, n, location_create, (void *)self);
-    RB_GC_GUARD_PTR(&self);
+    RB_GC_GUARD(self);
     return r;
 }
 
@@ -770,7 +770,7 @@
     else {
 	r = backtrace_to_location_ary(btval, lev, n);
     }
-    RB_GC_GUARD_PTR(&btval);
+    RB_GC_GUARD(btval);
     return r;
 }
 

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

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