ruby-changes:21275
From: naruse <ko1@a...>
Date: Sun, 25 Sep 2011 03:45:28 +0900 (JST)
Subject: [ruby-changes:21275] naruse:r33324 (trunk): * enum.c (slice_before_i): use rb_attr_get to surpress wrong warning
naruse 2011-09-25 03:43:32 +0900 (Sun, 25 Sep 2011) New Revision: 33324 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=33324 Log: * enum.c (slice_before_i): use rb_attr_get to surpress wrong warning for internal instance variable slicebefore_initial_state. Modified files: trunk/ChangeLog trunk/enum.c trunk/test/ruby/test_enum.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 33323) +++ ChangeLog (revision 33324) @@ -1,3 +1,8 @@ +Sun Sep 25 03:43:03 2011 NARUSE, Yui <naruse@r...> + + * enum.c (slice_before_i): use rb_attr_get to surpress wrong warning + for internal instance variable slicebefore_initial_state. + Fri Sep 23 14:20:14 2011 Martin Bosslet <Martin.Bosslet@g...> * ext/openssl/ossl_asn1.c: remove unused variable. Index: enum.c =================================================================== --- enum.c (revision 33323) +++ enum.c (revision 33324) @@ -2469,7 +2469,7 @@ enumerable = rb_ivar_get(enumerator, rb_intern("slicebefore_enumerable")); arg.sep_pred = rb_attr_get(enumerator, rb_intern("slicebefore_sep_pred")); arg.sep_pat = NIL_P(arg.sep_pred) ? rb_ivar_get(enumerator, rb_intern("slicebefore_sep_pat")) : Qnil; - arg.state = rb_ivar_get(enumerator, rb_intern("slicebefore_initial_state")); + arg.state = rb_attr_get(enumerator, rb_intern("slicebefore_initial_state")); arg.prev_elts = Qnil; arg.yielder = yielder; Index: test/ruby/test_enum.rb =================================================================== --- test/ruby/test_enum.rb (revision 33323) +++ test/ruby/test_enum.rb (revision 33324) @@ -1,5 +1,6 @@ require 'test/unit' require 'continuation' +require 'stringio' class TestEnumerable < Test::Unit::TestCase def setup @@ -22,6 +23,20 @@ $VERBOSE = @verbose end + def assert_not_warn + begin + org_stderr = $stderr + v = $VERBOSE + $stderr = StringIO.new(warn = '') + $VERBOSE = true + yield + ensure + $stderr = org_stderr + $VERBOSE = v + end + assert_equal("", warn) + end + def test_grep assert_equal([1, 2, 1, 2], @obj.grep(1..2)) a = [] @@ -383,6 +398,7 @@ ss = %w[abc defg h ijk l mno pqr st u vw xy z] assert_equal([%w[abc defg h], %w[ijk l], %w[mno], %w[pqr st u vw xy z]], ss.slice_before(/\A...\z/).to_a) + assert_not_warn{ss.slice_before(/\A...\z/).to_a} end end -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/