Interpreter crashes on a new  rubyspecs for rescue
--------------------------------------------------

                 Key: JRUBY-2709
                 URL: http://jira.codehaus.org/browse/JRUBY-2709
             Project: JRuby
          Issue Type: Bug
          Components: Interpreter
            Reporter: Vladimir Sizikov


Please note that only interpreter crashes, while compiler works just fine:

{noformat}
>mspec -t j -T -X+C spec/ruby/1.8/language/rescue_spec.rb
.....

Finished in 0.073000 seconds
{noformat}

And the interpreter:

{noformat}
mspec -t j -T -X-C spec/ruby/1.8/language/rescue_spec.rb
...Exception in thread "main" java.lang.ClassCastException: org.jruby.RubyArray 
cannot be cast to org.jruby.ast.ListNode
        at org.jruby.ast.RescueNode.interpret(RescueNode.java:134)
        at org.jruby.ast.BeginNode.interpret(BeginNode.java:80)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.ast.BlockNode.interpret(BlockNode.java:67)
        at org.jruby.evaluator.ASTInterpreter.eval(ASTInterpreter.java:87)
        at 
org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:206)
        at org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:192)
        at org.jruby.runtime.Block.yield(Block.java:103)
        at org.jruby.RubyObject.yieldUnder(RubyObject.java:1123)
        at org.jruby.RubyObject.specificEval(RubyObject.java:939)
        at org.jruby.RubyObject.instance_eval(RubyObject.java:1917)
        at org.jruby.RubyObjectInvoker$instance_eval_method_multi.call(Unknown 
Source)
        at 
org.jruby.internal.runtime.methods.JavaMethod$JavaMethodZeroOrOneOrTwoOrThreeBlock.call(JavaMethod.java:266)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:285)
        at org.jruby.ast.CallNode.interpret(CallNode.java:187)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.ast.RescueNode.interpret(RescueNode.java:109)
        at org.jruby.ast.BeginNode.interpret(BeginNode.java:80)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.interpretedCall(DefaultMethod.java:171)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:147)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:285)
        at org.jruby.ast.CallNode.interpret(CallNode.java:187)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.evaluator.ASTInterpreter.eval(ASTInterpreter.java:87)
        at 
org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:206)
        at org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:153)
        at org.jruby.runtime.Block.yield(Block.java:98)
        at org.jruby.RubyArray.each(RubyArray.java:1332)
        at org.jruby.RubyArrayInvoker$each_method_0_0.call(Unknown Source)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:315)
        at 
org.jruby.ast.CallNoArgBlockNode.interpret(CallNoArgBlockNode.java:63)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.ast.BlockNode.interpret(BlockNode.java:70)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.interpretedCall(DefaultMethod.java:171)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:147)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:308)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:363)
        at org.jruby.ast.FCallTwoArgNode.interpret(FCallTwoArgNode.java:38)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.ast.BlockNode.interpret(BlockNode.java:67)
        at org.jruby.evaluator.ASTInterpreter.eval(ASTInterpreter.java:87)
        at 
org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:206)
        at org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:153)
        at org.jruby.runtime.Block.yield(Block.java:98)
        at org.jruby.RubyArray.each(RubyArray.java:1332)
        at org.jruby.RubyArrayInvoker$each_method_0_0.call(Unknown Source)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.cacheAndCall(CallSite.java:129)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:318)
        at 
org.jruby.ast.CallNoArgBlockNode.interpret(CallNoArgBlockNode.java:63)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.ast.BlockNode.interpret(BlockNode.java:67)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.interpretedCall(DefaultMethod.java:171)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:147)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:224)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.cacheAndCall(CallSite.java:117)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:306)
        at org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:57)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.ast.BlockNode.interpret(BlockNode.java:67)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.interpretedCall(DefaultMethod.java:171)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:147)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.cacheAndCall(CallSite.java:93)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:288)
        at org.jruby.ast.CallNode.interpret(CallNode.java:187)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.interpretedCall(DefaultMethod.java:171)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:147)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:287)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.cacheAndCall(CallSite.java:153)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:348)
        at 
org.jruby.ast.FCallOneArgBlockNode.interpret(FCallOneArgBlockNode.java:36)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.ast.BlockNode.interpret(BlockNode.java:70)
        at org.jruby.ast.RootNode.interpret(RootNode.java:126)
        at org.jruby.Ruby.loadFile(Ruby.java:2017)
        at org.jruby.runtime.load.ExternalScript.load(ExternalScript.java:58)
        at org.jruby.runtime.load.LoadService.load(LoadService.java:212)
        at org.jruby.RubyKernel.load(RubyKernel.java:798)
        at org.jruby.RubyKernelInvoker$load_s_method_0_1.call(Unknown Source)
        at 
org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:233)
        at 
org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:142)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.cacheAndCall(CallSite.java:141)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:336)
        at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.evaluator.ASTInterpreter.eval(ASTInterpreter.java:87)
        at 
org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:206)
        at org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:192)
        at org.jruby.runtime.Block.yield(Block.java:103)
        at org.jruby.RubyObject.yieldUnder(RubyObject.java:1123)
        at org.jruby.RubyObject.specificEval(RubyObject.java:939)
        at org.jruby.RubyObject.instance_eval(RubyObject.java:1917)
        at org.jruby.RubyObjectInvoker$instance_eval_method_multi.call(Unknown 
Source)
        at 
org.jruby.internal.runtime.methods.JavaMethod$JavaMethodZeroOrOneOrTwoOrThreeBlock.call(JavaMethod.java:266)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.cacheAndCall(CallSite.java:93)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:288)
        at org.jruby.ast.CallNode.interpret(CallNode.java:187)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.ast.RescueNode.interpret(RescueNode.java:109)
        at org.jruby.ast.BeginNode.interpret(BeginNode.java:80)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.interpretedCall(DefaultMethod.java:171)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:147)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:287)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.cacheAndCall(CallSite.java:153)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:348)
        at 
org.jruby.ast.FCallOneArgBlockNode.interpret(FCallOneArgBlockNode.java:36)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.ast.BlockNode.interpret(BlockNode.java:67)
        at org.jruby.evaluator.ASTInterpreter.eval(ASTInterpreter.java:87)
        at 
org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:206)
        at org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:153)
        at org.jruby.runtime.Block.yield(Block.java:98)
        at org.jruby.RubyArray.each(RubyArray.java:1332)
        at org.jruby.RubyArrayInvoker$each_method_0_0.call(Unknown Source)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.cacheAndCall(CallSite.java:129)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:318)
        at 
org.jruby.ast.CallNoArgBlockNode.interpret(CallNoArgBlockNode.java:63)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.ast.BlockNode.interpret(BlockNode.java:70)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.interpretedCall(DefaultMethod.java:171)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:147)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:224)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.cacheAndCall(CallSite.java:117)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:306)
        at org.jruby.ast.VCallNode.interpret(VCallNode.java:82)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.ast.BlockNode.interpret(BlockNode.java:67)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.interpretedCall(DefaultMethod.java:171)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:147)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:224)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.cacheAndCall(CallSite.java:117)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:306)
        at org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:57)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.ast.BlockNode.interpret(BlockNode.java:67)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.interpretedCall(DefaultMethod.java:171)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:147)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:224)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.cacheAndCall(CallSite.java:117)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:306)
        at org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:57)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.ast.BlockNode.interpret(BlockNode.java:70)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.interpretedCall(DefaultMethod.java:171)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:147)
        at 
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:224)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.cacheAndCall(CallSite.java:117)
        at 
org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:306)
        at org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:57)
        at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
        at org.jruby.ast.BlockNode.interpret(BlockNode.java:70)
        at org.jruby.ast.RootNode.interpret(RootNode.java:126)
        at org.jruby.Ruby.runInterpreter(Ruby.java:539)
        at org.jruby.Ruby.runNormally(Ruby.java:443)
        at org.jruby.Ruby.runFromMain(Ruby.java:319)
        at org.jruby.Main.run(Main.java:184)
        at org.jruby.Main.run(Main.java:91)
        at org.jruby.Main.main(Main.java:82)
{noformat}

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to