Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Warning: setEvalType unimplemented in org.jruby.RubySymbol$1 #3541

Closed
ginkel opened this issue Dec 14, 2015 · 6 comments
Closed

Warning: setEvalType unimplemented in org.jruby.RubySymbol$1 #3541

ginkel opened this issue Dec 14, 2015 · 6 comments

Comments

@ginkel
Copy link

ginkel commented Dec 14, 2015

jruby 9.0.4.0 (2.2.2) 2015-11-17 b9fb7aa Java HotSpot(TM) 64-Bit Server VM 25.66-b17 on 1.8.0_66-b17 +jit [linux-amd64]

When running our RSpec tests under JRuby 9k, some tests emit the following warning:

setEvalType unimplemented in org.jruby.RubySymbol$1

I haven't yet been able to pinpoint what is actually leading to setEvalType being called as it seems to be impossible to monkey-patch org.jruby.runtime.BlockBody where this method is defined (monkey-patching seems to have no effect at all). Any hints how to effectively debug this are much appreciated!

@mkristian
Copy link
Member

I did see this recently for the first time but as it did not give any tests failures we decided to ignore it. so is it more then the warning message with you ?

@ginkel
Copy link
Author

ginkel commented Dec 14, 2015

It's just a warning message, but it clutters STDERR and gets annoying. ;-) I'd like to understand what is causing this so that it can eventually be fixed.

@obfuscoder
Copy link

I would love to get rid of this warning

@kares
Copy link
Member

kares commented Jan 29, 2016

what would likely speed this up being resolved is to have a reproduction piece of rspec suite or whatever ...

@headius
Copy link
Member

headius commented Jan 29, 2016

Trivial reproduction:

def foo; end
instance_eval &:foo

The problem is that the proc created for :foo does not have a typical Ruby block binding, so when we try to force it into an eval mode it doesn't mean anything. I'll have a look.

@headius
Copy link
Member

headius commented Jan 29, 2016

I think this warning might have been added during 9k dev just for us to see what blocks were not honoring evalType. I think it's safe to just remove the warning and/or make the method abstract and force all blocks to decide if evalType means anything.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants