ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
* [ruby-core:37387] [Ruby 1.9 - Bug #3351][Assigned] stack overflow on super
       [not found] <redmine.issue-3351.20100527154554@ruby-lang.org>
@ 2011-06-26  5:58 ` Yui NARUSE
  2011-06-28 14:28 ` [ruby-core:37634] [Ruby 1.9 - Bug #3351] " Yura Sokolov
                   ` (11 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: Yui NARUSE @ 2011-06-26  5:58 UTC (permalink / raw)
  To: ruby-core


Issue #3351 has been updated by Yui NARUSE.

Status changed from Open to Assigned
Assignee set to Koichi Sasada
Target version changed from 1.9.x to 1.9.3


----------------------------------------
Bug #3351: stack overflow on super
http://redmine.ruby-lang.org/issues/3351

Author: Serge Balyuk
Status: Assigned
Priority: Low
Assignee: Koichi Sasada
Category: core
Target version: 1.9.3
ruby -v: ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux]


=begin
 It looks like `super` behavior is a bit different in 1.8 and 1.9. Please find the example below:
 
 class Base
   def foo
     puts "bar"
   end
 end
 
 module Override
   def foo
     puts "override"
     super
   end
 end
 
 
 class A < Base
 end
 
 class B < A
 end
 
 B.send(:include, Override)
 A.send(:include, Override)
 
 B.new.foo
 
 ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] output:
 
 
 override
 override
 bar
 
 
 and ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux] output:
 
 ....
 override
 override
 override
 override
 override
 super.rb:9: stack level too deep (SystemStackError)
 
 
 Hope that helps.
=end



-- 
http://redmine.ruby-lang.org

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [ruby-core:37634] [Ruby 1.9 - Bug #3351] stack overflow on super
       [not found] <redmine.issue-3351.20100527154554@ruby-lang.org>
  2011-06-26  5:58 ` [ruby-core:37387] [Ruby 1.9 - Bug #3351][Assigned] stack overflow on super Yui NARUSE
@ 2011-06-28 14:28 ` Yura Sokolov
  2011-07-10  5:28 ` [ruby-core:37953] " Koichi Sasada
                   ` (10 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: Yura Sokolov @ 2011-06-28 14:28 UTC (permalink / raw)
  To: ruby-core


Issue #3351 has been updated by Yura Sokolov.


I had catched by this with rails/sequel/custom backend for delayed_jobs.
After figuring, I ought to do some manipulations with requiring my initializators, and that looks ugly a bit.

----------------------------------------
Bug #3351: stack overflow on super
http://redmine.ruby-lang.org/issues/3351

Author: Serge Balyuk
Status: Assigned
Priority: Low
Assignee: Koichi Sasada
Category: core
Target version: 1.9.3
ruby -v: ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux]


=begin
 It looks like `super` behavior is a bit different in 1.8 and 1.9. Please find the example below:
 
 class Base
   def foo
     puts "bar"
   end
 end
 
 module Override
   def foo
     puts "override"
     super
   end
 end
 
 
 class A < Base
 end
 
 class B < A
 end
 
 B.send(:include, Override)
 A.send(:include, Override)
 
 B.new.foo
 
 ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] output:
 
 
 override
 override
 bar
 
 
 and ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux] output:
 
 ....
 override
 override
 override
 override
 override
 super.rb:9: stack level too deep (SystemStackError)
 
 
 Hope that helps.
=end



-- 
http://redmine.ruby-lang.org

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [ruby-core:37953] [Ruby 1.9 - Bug #3351] stack overflow on super
       [not found] <redmine.issue-3351.20100527154554@ruby-lang.org>
  2011-06-26  5:58 ` [ruby-core:37387] [Ruby 1.9 - Bug #3351][Assigned] stack overflow on super Yui NARUSE
  2011-06-28 14:28 ` [ruby-core:37634] [Ruby 1.9 - Bug #3351] " Yura Sokolov
@ 2011-07-10  5:28 ` Koichi Sasada
  2012-08-03 16:35 ` [ruby-core:46968] [ruby-trunk - Bug #3351][Open] " shugo (Shugo Maeda)
                   ` (9 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: Koichi Sasada @ 2011-07-10  5:28 UTC (permalink / raw)
  To: ruby-core


Issue #3351 has been updated by Koichi Sasada.

Target version changed from 1.9.3 to 1.9.x

I'll challenge this issue on 1.9.4.  Sorry.
----------------------------------------
Bug #3351: stack overflow on super
http://redmine.ruby-lang.org/issues/3351

Author: Serge Balyuk
Status: Assigned
Priority: Low
Assignee: Koichi Sasada
Category: core
Target version: 1.9.x
ruby -v: ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux]


=begin
 It looks like `super` behavior is a bit different in 1.8 and 1.9. Please find the example below:
 
 class Base
   def foo
     puts "bar"
   end
 end
 
 module Override
   def foo
     puts "override"
     super
   end
 end
 
 
 class A < Base
 end
 
 class B < A
 end
 
 B.send(:include, Override)
 A.send(:include, Override)
 
 B.new.foo
 
 ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] output:
 
 
 override
 override
 bar
 
 
 and ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux] output:
 
 ....
 override
 override
 override
 override
 override
 super.rb:9: stack level too deep (SystemStackError)
 
 
 Hope that helps.
=end



-- 
http://redmine.ruby-lang.org

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [ruby-core:46968] [ruby-trunk - Bug #3351][Open] stack overflow on super
       [not found] <redmine.issue-3351.20100527154554@ruby-lang.org>
                   ` (2 preceding siblings ...)
  2011-07-10  5:28 ` [ruby-core:37953] " Koichi Sasada
@ 2012-08-03 16:35 ` shugo (Shugo Maeda)
  2012-10-01 11:24 ` [ruby-core:47772] [ruby-trunk - Bug #3351] " fahmisetiawan (Fahmi Setiawan)
                   ` (8 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: shugo (Shugo Maeda) @ 2012-08-03 16:35 UTC (permalink / raw)
  To: ruby-core


Issue #3351 has been updated by shugo (Shugo Maeda).

Status changed from Closed to Open

In HEAD of trunk, stack overflow doesn't occur, but Override#foo is called only once.
So I reopen this ticket.
----------------------------------------
Bug #3351: stack overflow on super
https://bugs.ruby-lang.org/issues/3351#change-28630

Author: serge_balyuk (Serge Balyuk)
Status: Open
Priority: Low
Assignee: ko1 (Koichi Sasada)
Category: core
Target version: 2.0.0
ruby -v: ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux]


=begin
 It looks like `super` behavior is a bit different in 1.8 and 1.9. Please find the example below:
 
 class Base
   def foo
     puts "bar"
   end
 end
 
 module Override
   def foo
     puts "override"
     super
   end
 end
 
 
 class A < Base
 end
 
 class B < A
 end
 
 B.send(:include, Override)
 A.send(:include, Override)
 
 B.new.foo
 
 ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] output:
 
 
 override
 override
 bar
 
 
 and ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux] output:
 
 ....
 override
 override
 override
 override
 override
 super.rb:9: stack level too deep (SystemStackError)
 
 
 Hope that helps.
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [ruby-core:47772] [ruby-trunk - Bug #3351] stack overflow on super
       [not found] <redmine.issue-3351.20100527154554@ruby-lang.org>
                   ` (3 preceding siblings ...)
  2012-08-03 16:35 ` [ruby-core:46968] [ruby-trunk - Bug #3351][Open] " shugo (Shugo Maeda)
@ 2012-10-01 11:24 ` fahmisetiawan (Fahmi Setiawan)
  2012-11-28 13:35 ` [ruby-core:50257] " ko1 (Koichi Sasada)
                   ` (7 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: fahmisetiawan (Fahmi Setiawan) @ 2012-10-01 11:24 UTC (permalink / raw)
  To: ruby-core


Issue #3351 has been updated by fahmisetiawan (Fahmi Setiawan).


http://alkian.blogspot.com/2012/09/cara-menyembuhkan-asam-urat-dan-kolestrol-secara-alami.html
http://alkian.blogspot.com/2012/09/keretamini-keretamall-komediputar-ya-keretaminikucom.html
http://alkian.blogspot.com/2012/09/harga-spesifikasi-samsung-galaxy-y-duos-terbaru.html
http://alkian.blogspot.com/2012/09/download-one-piece-grand-battle-2.html
http://alkian.blogspot.com/2012/09/harga-dan-spesifikasi-toyota-agya.html
http://alkian.blogspot.com/2012/09/harga-dan-spesifikasi-daihatsu-ayla.html
http://alkian.blogspot.com/2012/09/download-harvestmoon-backtonature-bahasa-indonesia.html
http://alkian.blogspot.com/2012/09/download-gratis-game-onet-untuk-windows.html
http://alkian.blogspot.com/2012/09/cara-download-dengan-jumbofiles.html
http://alkian.blogspot.com/2012/09/cara-mengganti-bahasa-indonesia-di-blackbery.html
http://alkian.blogspot.com/2012/09/free-download-windows-xp-sp3-black-edition-terbaru-full-version-2012.html
http://alkian.blogspot.com/2012/09/free-download-kamus-bahasa-arab.html
http://alkian.blogspot.com/2012/09/free-download-corel-draw-x5-portable.html
http://alkian.blogspot.com/2012/09/cara-membuat-related-post-artikel-terkait.html
http://alkian.blogspot.com/2012/09/daftar-harga-lengkap-hp-mito-terbaru.html
http://alkian.blogspot.com/2012/09/download-theme-tron-legacy-for-windows-7.html
http://alkian.blogspot.com/2012/09/download-alquran-digital-3d-untuk-pc-komputer.html
http://alkian.blogspot.com/2012/09/kumpulan-kata-kata-renungan-terbaik-2012.html
http://alkian.blogspot.com/2012/09/kumpulan-website-sosbuk-social-bookmarking.html
http://alkian.blogspot.com/2012/09/template-seo-friendly-simple-blue.html
http://alkian.blogspot.com/2012/09/harga-hp-nokia-september-2012-terbaru.html
http://alkian.blogspot.com/2012/09/foto-ariel-noah-terbaru.html
http://alkian.blogspot.com/2012/09/download-serial-number-windows-seven.html
http://alkian.blogspot.com/2012/09/biodata-foto-iqbaal-dhiafakhri-ramadhan.html
http://alkian.blogspot.com/2012/09/harga-dan-spesifikasi-samsung-galaxy-camera.html
http://alkian.blogspot.com/2012/09/biodata-akb48-lengkap-dengan-foto.html
http://alkian.blogspot.com/2012/08/arti-dan-makna-kata-noah.html
----------------------------------------
Bug #3351: stack overflow on super
https://bugs.ruby-lang.org/issues/3351#change-29897

Author: serge_balyuk (Serge Balyuk)
Status: Open
Priority: Low
Assignee: ko1 (Koichi Sasada)
Category: core
Target version: 2.0.0
ruby -v: ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux]


=begin
 It looks like `super` behavior is a bit different in 1.8 and 1.9. Please find the example below:
 
 class Base
   def foo
     puts "bar"
   end
 end
 
 module Override
   def foo
     puts "override"
     super
   end
 end
 
 
 class A < Base
 end
 
 class B < A
 end
 
 B.send(:include, Override)
 A.send(:include, Override)
 
 B.new.foo
 
 ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] output:
 
 
 override
 override
 bar
 
 
 and ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux] output:
 
 ....
 override
 override
 override
 override
 override
 super.rb:9: stack level too deep (SystemStackError)
 
 
 Hope that helps.
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [ruby-core:50257] [ruby-trunk - Bug #3351] stack overflow on super
       [not found] <redmine.issue-3351.20100527154554@ruby-lang.org>
                   ` (4 preceding siblings ...)
  2012-10-01 11:24 ` [ruby-core:47772] [ruby-trunk - Bug #3351] " fahmisetiawan (Fahmi Setiawan)
@ 2012-11-28 13:35 ` ko1 (Koichi Sasada)
  2012-12-09 15:28 ` [ruby-core:50716] [ruby-trunk - Bug #3351][Assigned] " mame (Yusuke Endoh)
                   ` (6 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: ko1 (Koichi Sasada) @ 2012-11-28 13:35 UTC (permalink / raw)
  To: ruby-core


Issue #3351 has been updated by ko1 (Koichi Sasada).


shugo-san, do you know why Override#foo called only once?

----------------------------------------
Bug #3351: stack overflow on super
https://bugs.ruby-lang.org/issues/3351#change-34083

Author: serge_balyuk (Serge Balyuk)
Status: Open
Priority: Low
Assignee: ko1 (Koichi Sasada)
Category: core
Target version: 2.0.0
ruby -v: ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux]


=begin
 It looks like `super` behavior is a bit different in 1.8 and 1.9. Please find the example below:
 
 class Base
   def foo
     puts "bar"
   end
 end
 
 module Override
   def foo
     puts "override"
     super
   end
 end
 
 
 class A < Base
 end
 
 class B < A
 end
 
 B.send(:include, Override)
 A.send(:include, Override)
 
 B.new.foo
 
 ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] output:
 
 
 override
 override
 bar
 
 
 and ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux] output:
 
 ....
 override
 override
 override
 override
 override
 super.rb:9: stack level too deep (SystemStackError)
 
 
 Hope that helps.
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [ruby-core:50716] [ruby-trunk - Bug #3351][Assigned] stack overflow on super
       [not found] <redmine.issue-3351.20100527154554@ruby-lang.org>
                   ` (5 preceding siblings ...)
  2012-11-28 13:35 ` [ruby-core:50257] " ko1 (Koichi Sasada)
@ 2012-12-09 15:28 ` mame (Yusuke Endoh)
  2012-12-13  5:24 ` [ruby-core:50857] [ruby-trunk - Bug #3351] " shugo (Shugo Maeda)
                   ` (5 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: mame (Yusuke Endoh) @ 2012-12-09 15:28 UTC (permalink / raw)
  To: ruby-core


Issue #3351 has been updated by mame (Yusuke Endoh).

Status changed from Open to Assigned
Assignee changed from ko1 (Koichi Sasada) to shugo (Shugo Maeda)

Shugo-san, ko1, what's the status?
Do you think this issue important?

-- 
Yusuke Endoh <mame@tsg.ne.jp>
----------------------------------------
Bug #3351: stack overflow on super
https://bugs.ruby-lang.org/issues/3351#change-34563

Author: serge_balyuk (Serge Balyuk)
Status: Assigned
Priority: Low
Assignee: shugo (Shugo Maeda)
Category: core
Target version: 2.0.0
ruby -v: ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux]


=begin
 It looks like `super` behavior is a bit different in 1.8 and 1.9. Please find the example below:
 
 class Base
   def foo
     puts "bar"
   end
 end
 
 module Override
   def foo
     puts "override"
     super
   end
 end
 
 
 class A < Base
 end
 
 class B < A
 end
 
 B.send(:include, Override)
 A.send(:include, Override)
 
 B.new.foo
 
 ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] output:
 
 
 override
 override
 bar
 
 
 and ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux] output:
 
 ....
 override
 override
 override
 override
 override
 super.rb:9: stack level too deep (SystemStackError)
 
 
 Hope that helps.
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [ruby-core:50857] [ruby-trunk - Bug #3351] stack overflow on super
       [not found] <redmine.issue-3351.20100527154554@ruby-lang.org>
                   ` (6 preceding siblings ...)
  2012-12-09 15:28 ` [ruby-core:50716] [ruby-trunk - Bug #3351][Assigned] " mame (Yusuke Endoh)
@ 2012-12-13  5:24 ` shugo (Shugo Maeda)
  2012-12-13  5:32   ` [ruby-core:50860] " Yukihiro Matsumoto
  2012-12-29 13:03 ` [ruby-core:51189] [ruby-trunk - Bug #3351][Open] " shugo (Shugo Maeda)
                   ` (4 subsequent siblings)
  12 siblings, 1 reply; 14+ messages in thread
From: shugo (Shugo Maeda) @ 2012-12-13  5:24 UTC (permalink / raw)
  To: ruby-core


Issue #3351 has been updated by shugo (Shugo Maeda).

Assignee changed from shugo (Shugo Maeda) to matz (Yukihiro Matsumoto)

mame (Yusuke Endoh) wrote:
> Shugo-san, ko1, what's the status?

Override#foo is called only once, because in the SVN trunk, if a method found by super is the current method, it's skipped to avoid an infinite loop.  The check was introduced for super in a refinement.  Without it, super in a refinement causes an infinite loop.

> Do you think this issue important?

I don't think so.  Can I leave it as is, Matz?

----------------------------------------
Bug #3351: stack overflow on super
https://bugs.ruby-lang.org/issues/3351#change-34690

Author: serge_balyuk (Serge Balyuk)
Status: Assigned
Priority: Low
Assignee: matz (Yukihiro Matsumoto)
Category: core
Target version: 2.0.0
ruby -v: ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux]


=begin
 It looks like `super` behavior is a bit different in 1.8 and 1.9. Please find the example below:
 
 class Base
   def foo
     puts "bar"
   end
 end
 
 module Override
   def foo
     puts "override"
     super
   end
 end
 
 
 class A < Base
 end
 
 class B < A
 end
 
 B.send(:include, Override)
 A.send(:include, Override)
 
 B.new.foo
 
 ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] output:
 
 
 override
 override
 bar
 
 
 and ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux] output:
 
 ....
 override
 override
 override
 override
 override
 super.rb:9: stack level too deep (SystemStackError)
 
 
 Hope that helps.
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [ruby-core:50860] Re: [ruby-trunk - Bug #3351] stack overflow on super
  2012-12-13  5:24 ` [ruby-core:50857] [ruby-trunk - Bug #3351] " shugo (Shugo Maeda)
@ 2012-12-13  5:32   ` Yukihiro Matsumoto
  0 siblings, 0 replies; 14+ messages in thread
From: Yukihiro Matsumoto @ 2012-12-13  5:32 UTC (permalink / raw)
  To: ruby-core

Hi,

In message "Re: [ruby-core:50857] [ruby-trunk - Bug #3351] stack overflow on super"
    on Thu, 13 Dec 2012 14:24:21 +0900, "shugo (Shugo Maeda)" <redmine@ruby-lang.org> writes:

|> Do you think this issue important?
|
|I don't think so.  Can I leave it as is, Matz?

OK.

							matz.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [ruby-core:51189] [ruby-trunk - Bug #3351][Open] stack overflow on super
       [not found] <redmine.issue-3351.20100527154554@ruby-lang.org>
                   ` (7 preceding siblings ...)
  2012-12-13  5:24 ` [ruby-core:50857] [ruby-trunk - Bug #3351] " shugo (Shugo Maeda)
@ 2012-12-29 13:03 ` shugo (Shugo Maeda)
  2013-02-17 23:52 ` [ruby-core:52406] [ruby-trunk - Bug #3351] " ko1 (Koichi Sasada)
                   ` (3 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: shugo (Shugo Maeda) @ 2012-12-29 13:03 UTC (permalink / raw)
  To: ruby-core


Issue #3351 has been updated by shugo (Shugo Maeda).

Status changed from Assigned to Open
Assignee deleted (matz (Yukihiro Matsumoto))
Target version changed from 2.0.0 to next minor


----------------------------------------
Bug #3351: stack overflow on super
https://bugs.ruby-lang.org/issues/3351#change-35142

Author: serge_balyuk (Serge Balyuk)
Status: Open
Priority: Low
Assignee: 
Category: core
Target version: next minor
ruby -v: ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux]


=begin
 It looks like `super` behavior is a bit different in 1.8 and 1.9. Please find the example below:
 
 class Base
   def foo
     puts "bar"
   end
 end
 
 module Override
   def foo
     puts "override"
     super
   end
 end
 
 
 class A < Base
 end
 
 class B < A
 end
 
 B.send(:include, Override)
 A.send(:include, Override)
 
 B.new.foo
 
 ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] output:
 
 
 override
 override
 bar
 
 
 and ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux] output:
 
 ....
 override
 override
 override
 override
 override
 super.rb:9: stack level too deep (SystemStackError)
 
 
 Hope that helps.
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [ruby-core:52406] [ruby-trunk - Bug #3351] stack overflow on super
       [not found] <redmine.issue-3351.20100527154554@ruby-lang.org>
                   ` (8 preceding siblings ...)
  2012-12-29 13:03 ` [ruby-core:51189] [ruby-trunk - Bug #3351][Open] " shugo (Shugo Maeda)
@ 2013-02-17 23:52 ` ko1 (Koichi Sasada)
  2015-07-01  9:11 ` [ruby-core:69825] [Ruby trunk " ko1
                   ` (2 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: ko1 (Koichi Sasada) @ 2013-02-17 23:52 UTC (permalink / raw)
  To: ruby-core


Issue #3351 has been updated by ko1 (Koichi Sasada).

Assignee set to ko1 (Koichi Sasada)


----------------------------------------
Bug #3351: stack overflow on super
https://bugs.ruby-lang.org/issues/3351#change-36459

Author: serge_balyuk (Serge Balyuk)
Status: Open
Priority: Low
Assignee: ko1 (Koichi Sasada)
Category: core
Target version: next minor
ruby -v: ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux]


=begin
 It looks like `super` behavior is a bit different in 1.8 and 1.9. Please find the example below:
 
 class Base
   def foo
     puts "bar"
   end
 end
 
 module Override
   def foo
     puts "override"
     super
   end
 end
 
 
 class A < Base
 end
 
 class B < A
 end
 
 B.send(:include, Override)
 A.send(:include, Override)
 
 B.new.foo
 
 ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] output:
 
 
 override
 override
 bar
 
 
 and ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux] output:
 
 ....
 override
 override
 override
 override
 override
 super.rb:9: stack level too deep (SystemStackError)
 
 
 Hope that helps.
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [ruby-core:69825] [Ruby trunk - Bug #3351] stack overflow on super
       [not found] <redmine.issue-3351.20100527154554@ruby-lang.org>
                   ` (9 preceding siblings ...)
  2013-02-17 23:52 ` [ruby-core:52406] [ruby-trunk - Bug #3351] " ko1 (Koichi Sasada)
@ 2015-07-01  9:11 ` ko1
  2015-07-01  9:27 ` [ruby-core:69826] " ko1
  2015-07-06  8:38 ` [ruby-core:69881] " matz
  12 siblings, 0 replies; 14+ messages in thread
From: ko1 @ 2015-07-01  9:11 UTC (permalink / raw)
  To: ruby-core

Issue #3351 has been updated by Koichi Sasada.

Description updated

----------------------------------------
Bug #3351: stack overflow on super
https://bugs.ruby-lang.org/issues/3351#change-53224

* Author: Serge Balyuk
* Status: Open
* Priority: Normal
* Assignee: Koichi Sasada
* ruby -v: ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux]
* Backport: 
----------------------------------------
It looks like `super` behavior is a bit different in 1.8 and 1.9. Please find the example below:

```ruby 
 class Base
   def foo
     puts "bar"
   end
 end
 
 module Override
   def foo
     puts "override"
     super
   end
 end
 
 
 class A < Base
 end
 
 class B < A
 end
 
 B.send(:include, Override)
 A.send(:include, Override)
 
 B.new.foo
 
 ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] output:
 
 
 override
 override
 bar
```
 
 and ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux] output:
 
```
 ....
 override
 override
 override
 override
 override
 super.rb:9: stack level too deep (SystemStackError)
```
 
Hope that helps.


---Files--------------------------------
super.rb (217 Bytes)


-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [ruby-core:69826] [Ruby trunk - Bug #3351] stack overflow on super
       [not found] <redmine.issue-3351.20100527154554@ruby-lang.org>
                   ` (10 preceding siblings ...)
  2015-07-01  9:11 ` [ruby-core:69825] [Ruby trunk " ko1
@ 2015-07-01  9:27 ` ko1
  2015-07-06  8:38 ` [ruby-core:69881] " matz
  12 siblings, 0 replies; 14+ messages in thread
From: ko1 @ 2015-07-01  9:27 UTC (permalink / raw)
  To: ruby-core

Issue #3351 has been updated by Koichi Sasada.


Just now, we avoid this issue by putting `klass` into each frame.

However, the workaround is remaining.

Now, ancestors is here:

```
[B, Override, A, Override, Base, Object, Kernel, BasicObject]
```

and now MRI calls `Override#foo` only once. It skips second Override#foo.

```
override
bar
```

However, if there is a `A#foo`, then call `Override#foo` twice.

```
override
A
override
bar
```

It is ugly workaround. So I want to remove such skipping.

Matz: Can I call `Override#foo` twice even if it is duplicated with last call?


----------------------------------------
Bug #3351: stack overflow on super
https://bugs.ruby-lang.org/issues/3351#change-53225

* Author: Serge Balyuk
* Status: Open
* Priority: Normal
* Assignee: Koichi Sasada
* ruby -v: ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux]
* Backport: 
----------------------------------------
It looks like `super` behavior is a bit different in 1.8 and 1.9. Please find the example below:

```ruby 
 class Base
   def foo
     puts "bar"
   end
 end
 
 module Override
   def foo
     puts "override"
     super
   end
 end
 
 
 class A < Base
 end
 
 class B < A
 end
 
 B.send(:include, Override)
 A.send(:include, Override)
 
 B.new.foo
 
 ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] output:
 
 
 override
 override
 bar
```
 
 and ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux] output:
 
```
 ....
 override
 override
 override
 override
 override
 super.rb:9: stack level too deep (SystemStackError)
```
 
Hope that helps.


---Files--------------------------------
super.rb (217 Bytes)


-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [ruby-core:69881] [Ruby trunk - Bug #3351] stack overflow on super
       [not found] <redmine.issue-3351.20100527154554@ruby-lang.org>
                   ` (11 preceding siblings ...)
  2015-07-01  9:27 ` [ruby-core:69826] " ko1
@ 2015-07-06  8:38 ` matz
  12 siblings, 0 replies; 14+ messages in thread
From: matz @ 2015-07-06  8:38 UTC (permalink / raw)
  To: ruby-core

Issue #3351 has been updated by Yukihiro Matsumoto.


Agreed.

Matz.


----------------------------------------
Bug #3351: stack overflow on super
https://bugs.ruby-lang.org/issues/3351#change-53296

* Author: Serge Balyuk
* Status: Open
* Priority: Normal
* Assignee: Koichi Sasada
* ruby -v: ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux]
* Backport: 
----------------------------------------
It looks like `super` behavior is a bit different in 1.8 and 1.9. Please find the example below:

```ruby 
 class Base
   def foo
     puts "bar"
   end
 end
 
 module Override
   def foo
     puts "override"
     super
   end
 end
 
 
 class A < Base
 end
 
 class B < A
 end
 
 B.send(:include, Override)
 A.send(:include, Override)
 
 B.new.foo
 
 ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] output:
 
 
 override
 override
 bar
```
 
 and ruby 1.9.3dev (2010-05-26 trunk 28028) [i686-linux] output:
 
```
 ....
 override
 override
 override
 override
 override
 super.rb:9: stack level too deep (SystemStackError)
```
 
Hope that helps.


---Files--------------------------------
super.rb (217 Bytes)


-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2015-07-06  8:11 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <redmine.issue-3351.20100527154554@ruby-lang.org>
2011-06-26  5:58 ` [ruby-core:37387] [Ruby 1.9 - Bug #3351][Assigned] stack overflow on super Yui NARUSE
2011-06-28 14:28 ` [ruby-core:37634] [Ruby 1.9 - Bug #3351] " Yura Sokolov
2011-07-10  5:28 ` [ruby-core:37953] " Koichi Sasada
2012-08-03 16:35 ` [ruby-core:46968] [ruby-trunk - Bug #3351][Open] " shugo (Shugo Maeda)
2012-10-01 11:24 ` [ruby-core:47772] [ruby-trunk - Bug #3351] " fahmisetiawan (Fahmi Setiawan)
2012-11-28 13:35 ` [ruby-core:50257] " ko1 (Koichi Sasada)
2012-12-09 15:28 ` [ruby-core:50716] [ruby-trunk - Bug #3351][Assigned] " mame (Yusuke Endoh)
2012-12-13  5:24 ` [ruby-core:50857] [ruby-trunk - Bug #3351] " shugo (Shugo Maeda)
2012-12-13  5:32   ` [ruby-core:50860] " Yukihiro Matsumoto
2012-12-29 13:03 ` [ruby-core:51189] [ruby-trunk - Bug #3351][Open] " shugo (Shugo Maeda)
2013-02-17 23:52 ` [ruby-core:52406] [ruby-trunk - Bug #3351] " ko1 (Koichi Sasada)
2015-07-01  9:11 ` [ruby-core:69825] [Ruby trunk " ko1
2015-07-01  9:27 ` [ruby-core:69826] " ko1
2015-07-06  8:38 ` [ruby-core:69881] " matz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).