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

ruby-changes:29343

From: nagachika <ko1@a...>
Date: Wed, 19 Jun 2013 04:40:25 +0900 (JST)
Subject: [ruby-changes:29343] nagachika:r41395 (ruby_2_0_0): merge revision(s) 41389: [Backport #8540]

nagachika	2013-06-19 04:40:13 +0900 (Wed, 19 Jun 2013)

  New Revision: 41395

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

  Log:
    merge revision(s) 41389: [Backport #8540]
    
    * vm_insnhelper.c (vm_call_method): ensure methods of type
      VM_METHOD_TYPE_ATTR_SET are called with 1 argument
    
    * test/ruby/test_module.rb (class TestModule): add test
    [ruby-core:55543] [Bug #8540]

  Modified directories:
    branches/ruby_2_0_0/
  Modified files:
    branches/ruby_2_0_0/ChangeLog
    branches/ruby_2_0_0/test/ruby/test_module.rb
    branches/ruby_2_0_0/version.h
    branches/ruby_2_0_0/vm_insnhelper.c

Index: ruby_2_0_0/ChangeLog
===================================================================
--- ruby_2_0_0/ChangeLog	(revision 41394)
+++ ruby_2_0_0/ChangeLog	(revision 41395)
@@ -1,3 +1,12 @@ https://github.com/ruby/ruby/blob/trunk/ruby_2_0_0/ChangeLog#L1
+Wed Jun 19 04:20:31 2013  Charlie Somerville  <charliesome@r...>
+
+	* vm_insnhelper.c (vm_call_method): ensure methods of type
+	  VM_METHOD_TYPE_ATTR_SET are called with 1 argument
+
+	* test/ruby/test_module.rb (class TestModule): add test
+
+	[ruby-core:55543] [Bug #8540]
+
 Wed Jun 19 03:54:04 2013  Nobuyoshi Nakada  <nobu@r...>
 
 	* defs/id.def (predefined): add "idProc".
Index: ruby_2_0_0/version.h
===================================================================
--- ruby_2_0_0/version.h	(revision 41394)
+++ ruby_2_0_0/version.h	(revision 41395)
@@ -1,6 +1,6 @@ https://github.com/ruby/ruby/blob/trunk/ruby_2_0_0/version.h#L1
 #define RUBY_VERSION "2.0.0"
 #define RUBY_RELEASE_DATE "2013-06-19"
-#define RUBY_PATCHLEVEL 232
+#define RUBY_PATCHLEVEL 233
 
 #define RUBY_RELEASE_YEAR 2013
 #define RUBY_RELEASE_MONTH 6
Index: ruby_2_0_0/vm_insnhelper.c
===================================================================
--- ruby_2_0_0/vm_insnhelper.c	(revision 41394)
+++ ruby_2_0_0/vm_insnhelper.c	(revision 41395)
@@ -1750,7 +1750,7 @@ vm_call_method(rb_thread_t *th, rb_contr https://github.com/ruby/ruby/blob/trunk/ruby_2_0_0/vm_insnhelper.c#L1750
 		CI_SET_FASTPATH(ci, vm_call_cfunc, enable_fastpath);
 		return vm_call_cfunc(th, cfp, ci);
 	      case VM_METHOD_TYPE_ATTRSET:{
-		rb_check_arity(ci->argc, 0, 1);
+		rb_check_arity(ci->argc, 1, 1);
 		ci->aux.index = 0;
 		CI_SET_FASTPATH(ci, vm_call_attrset, enable_fastpath && !(ci->flag & VM_CALL_ARGS_SPLAT));
 		return vm_call_attrset(th, cfp, ci);
Index: ruby_2_0_0/test/ruby/test_module.rb
===================================================================
--- ruby_2_0_0/test/ruby/test_module.rb	(revision 41394)
+++ ruby_2_0_0/test/ruby/test_module.rb	(revision 41395)
@@ -1165,6 +1165,14 @@ class TestModule < Test::Unit::TestCase https://github.com/ruby/ruby/blob/trunk/ruby_2_0_0/test/ruby/test_module.rb#L1165
     assert_equal(1, c.x, bug3406)
   end
 
+  def test_attr_writer_with_no_arguments
+    bug8540 = "[ruby-core:55543]"
+    c = Class.new do
+      attr_writer :foo
+    end
+    assert_raise(ArgumentError) { c.new.send :foo= }
+  end
+
   def test_private_constant
     c = Class.new
     c.const_set(:FOO, "foo")

Property changes on: ruby_2_0_0
___________________________________________________________________
Modified: svn:mergeinfo
   Merged /trunk:r41389


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

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