Boxed variable compilation doesn't detect eval within closures
--------------------------------------------------------------
Key: JRUBY-1602
URL: http://jira.codehaus.org/browse/JRUBY-1602
Project: JRuby
Issue Type: Bug
Components: Compiler
Reporter: Charles Oliver Nutter
Assignee: Charles Oliver Nutter
Priority: Minor
Fix For: JRuby 1.1
If an eval is called within any contained closure, all local variables in all
contained scopes must be fully heap-based. Currently, since ASTInspector does
not walk contained closures, this can't be detected. It breaks the boxed
variable compiler in those cases (the contained evals won't see updates to or
be able to update captured vars).
Note that since boxed variable compilation is incompatible with Ruby 1.8's
proc-as-binding feature, this is a minor priority for 1.1. However when we
start to add more Ruby 1.9 features, like disabling proc-as-binding (or if
people opt to use boxed variable compilation for other reasons), we will be
able to start using this compiler more.
--
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