system ~/projects/jruby2 $ bin/jruby --1.9 -e "srand % 0xFFFF"
CachingCallSite.java:418:in `pollAndGetClass': java.lang.NullPointerException
from CachingCallSite.java:164:in `call'
from -e:1:in `__file__'
from -e:-1:in `load'
from Ruby.java:695:in `runScript'
from Ruby.java:688:in `runScript'
from Ruby.java:595:in `runNormally'
from Ruby.java:444:in `runFromMain'
from Main.java:329:in `doRunFromMain'
from Main.java:241:in `internalRun'
from Main.java:207:in `run'
from Main.java:191:in `run'
from Main.java:171:in `main'
The problem here is that the 1.9-mode srand returns the old seed, but the seed is not initialized to anything at boot. As a result, the old seed for the first call is null, which propagates into the system and eventually causes a call site to blow up.
This only occurs on the 1.6 line, but is obviously present up through 126.96.36.199. A fix will be in 1.6.6...I have a patch in progress.
A workaround is to make a call to srand earlier and never use the result. This causes the global seed to have a value for future calls.