Skip to content

pass -ea to JVM and fix asserts for test targets#5693

Merged
headius merged 5 commits intojruby:masterfrom
kares:master
Apr 12, 2019
Merged

pass -ea to JVM and fix asserts for test targets#5693
headius merged 5 commits intojruby:masterfrom
kares:master

Conversation

@kares
Copy link
Member

@kares kares commented Apr 12, 2019

... also incorporates #5612

there's one assert left that is failing related to frame dup-ing (for procs)

@kares kares added this to the JRuby 9.2.8.0 milestone Apr 12, 2019
headius added a commit that referenced this pull request Apr 12, 2019
Block aggregates a Binding which aggregates a Frame which
aggregates a Block, so having these all initialize statically
caused at least one of those reference to end up null. In #5693
this manifested as a failure to dup the frame for a Symbol proc,
since Symbol procs are initialized with Frame.DUMMY, which static
initialized before Block, so Block.NULL_BLOCK was null and as a
result the block field in Frame was null and triggered asserts.

Block.NULL_BLOCK, as the most heavily used, remains as the sole
static "dummy" in this cycle. NULL_BLOCK is initialized with
a new Binding containing an uninitialized Frame, and then the
Frame is updated to point back to NULL_BLOCK. This avoids the
circulate initialization. Previous references to the dummy Frame
and dummy Binding now use NULL_BLOCK's contents.

See #5692 for the catch-all issue that goes with PR #5693.
@headius
Copy link
Member

headius commented Apr 12, 2019

I believe I've fixed the null block duping on master, in 3095263.

kares and others added 5 commits April 12, 2019 19:21
it did not work for a while (was noticed at jrubyGH-5612)

assertions are enabled in tests since: 21e4663
... and these will fail for anon classes (starting with a digit)
... setting up (anonymous) Java class wrappers
headius added a commit that referenced this pull request Apr 12, 2019
@headius
Copy link
Member

headius commented Apr 12, 2019

ManyVarsDynamicScope is fixed on master.

@headius
Copy link
Member

headius commented Apr 12, 2019

I do not see any other failures on your branch that we haven't addressed, so I'm going to merge. We'll fix anything left on master, but hopefully it's green.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants