History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: JRUBY-1602
Type: Bug Bug
Status: Open Open
Priority: Minor Minor
Assignee: Charles Oliver Nutter
Reporter: Charles Oliver Nutter
Votes: 0
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
JRuby

Boxed variable compilation doesn't detect eval within closures

Created: 21/Nov/07 10:14 PM   Updated: 15/Feb/08 12:55 PM
Component/s: Compiler
Affects Version/s: None
Fix Version/s: None

Time Tracking:
Not Specified


 Description  « Hide
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.



 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
Charles Oliver Nutter - 15/Feb/08 12:55 PM
Removing target release from issues that fit any of the following criteria:
  • No known way to fix them
  • Java integration enhancements out of scope for 1.1 release
  • Other out of scope issues for 1.1