[MacRuby] #860: Assertion fails in pop_current_exception when catch/throw used in rescue
MacRuby
ruby-noreply at macosforge.org
Mon Aug 23 16:12:21 PDT 2010
#860: Assertion fails in pop_current_exception when catch/throw used in rescue
----------------------------------+-----------------------------------------
Reporter: watson1978@… | Owner: lsansonetti@…
Type: defect | Status: new
Priority: blocker | Milestone:
Component: MacRuby | Keywords:
----------------------------------+-----------------------------------------
Description changed by lsansonetti@…:
Old description:
> {{{
> #!ruby
> $ cat test_catch_throw.rb
> begin
> raise
> rescue
> catch(:ambiguous) { throw :ambiguous }
> p :ok
> end
> }}}
>
> Result of Ruby 1.9.1:
> {{{
> $ ruby test_catch_throw.rb
> :ok
> }}}
>
> Result of MacRuby Trunk:
> {{{
> $ macruby test_catch_throw.rb
> Assertion failed: ((size_t)pos < current_exceptions.size()), function
> pop_current_exception, file vm.cpp, line 3343.
> zsh: abort macruby test_opt.rb
> }}}+
New description:
{{{
#!ruby
$ cat test_catch_throw.rb
begin
raise
rescue
catch(:ambiguous) { throw :ambiguous }
p :ok
end
}}}
Result of Ruby 1.9.1:
{{{
$ ruby test_catch_throw.rb
:ok
}}}
Result of MacRuby Trunk:
{{{
$ macruby test_catch_throw.rb
Assertion failed: ((size_t)pos < current_exceptions.size()), function
pop_current_exception, file vm.cpp, line 3343.
zsh: abort macruby test_opt.rb
}}}+
Original report (involving optparse) which was deleted:
{{{
$ cat test_opt.rb
require 'optparse'
opt = OptionParser.new
flag = self.class
opt.def_option("--open") {|x|}
opt.def_option("-x") {|x| flag = x}
opt.def_option("--option") {|x| flag = x}
begin
opt.parse!(%w"--op")
rescue => e
p e
end
begin
opt.parse!(%w"-o")
rescue => e
p e
end
}}}
Result of Ruby 1.9.1:
{{{
$ ruby test_opt.rb
#<OptionParser::AmbiguousOption: --op>
#<OptionParser::AmbiguousOption: -o>
}}}
Result of MacRuby Trunk:
{{{
$ macruby test_opt.rb
#<OptionParser::AmbiguousOption: --op>
Assertion failed: ((size_t)pos < current_exceptions.size()), function
pop_current_exception, file vm.cpp, line 3343.
zsh: abort macruby test_opt.rb
}}}
--
--
Ticket URL: <http://www.macruby.org/trac/ticket/860#comment:6>
MacRuby <http://macruby.org/>
More information about the macruby-tickets
mailing list