Will,<div><br></div><div>I plan on submitting this patch that I know will break openjdk. Basically, I'm changing the way we intern strings to call a Java method defined in the classlib. For GNU Classpath, it's easy, it just calls VMString::intern. I don't know if OpenJDK has a Java implementation that can be called directly. Note that calling VMString::intern comes pretty early in the game: the first time a string is created in J3, it will call it.</div>
<div><br></div><div>An easy fix for the openjdk port is to set JavaUpcalls::internString to NULL. The Jnjvm::constructString method will then not attempt to intern the string and call a Java  method. Of course that is not spec compliant, because some strings must be interned, but at least it should not crash on you.</div>
<div><br></div><div>The rationale behind that change is that the current implementation did not really work and was adding unneeded complexity on top of vmkit (more or less adding C++ weak references). It was also storing Java objects into a std::map, and I'd like to avoid that.</div>
<div><br></div><div>Will, let me know if the change and my intermediate fix proposal is ok with you.</div><div><br></div><div>Cheers,</div><div>Nicolas</div>