Oliver Deakin wrote:
> What I mean to say is that the behaviour when the function is called
> without a pending exception is unspecified, and in that case I think it
> makes most sense to match the RI.


Let's say that I disagree to *impose* matching the RI's behavior for
undefined JNI code on Harmony VMs.  In many cases, matching the RI's
behavior on undefined JNI would require reverse engineering way beyond a
point I feel comfortable with.  I definitely think that Harmony's native
code should NEVER rely on undefined JNI behavior.  JIRA reports should
be raised for faulty JNI code.

On the other hand, I think that it would be a nice thing to keep an
explicit list of "expected" behavior for some widely used (by 3rd
parties) "undefined JNI", so that VM implementors are *encouraged* (not
*forced*) to provide such workarounds.  Some workarounds can be
expensive to implement; we had we had to implement a more expensive
approach for badly written JNI code that does not explicitly reserve
enough local native references (only 16 are guaranteed by default in the
spec).

So, I'll add a the ExceptionDecribe workaround to SableVM permanently,
but I do not wish feel obligated to do so. :-)

Etienne

-- 
Etienne M. Gagnon, Ph.D.            http://www.info2.uqam.ca/~egagnon/
SableVM:                                       http://www.sablevm.org/
SableCC:                                       http://www.sablecc.org/

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to