Possible regression (assert(_adapter == NULL) failed: init'd to NULL)

Rémi Forax forax at univ-mlv.fr
Sun Feb 13 03:03:30 PST 2011


On 02/13/2011 02:08 AM, John Rose wrote:
> It looks like this regression is due to a version mismatch.  The name "invokeVarargs" is no longer defined; it was replaced by "invokeWithArguments" and has been deprecated for some time (since bug 6981777, circa 10/2010).
>
> I suspect the lambda prototype needs updating.  Also, we are in a transitional period now, since the java.dyn package is being renamed to java.lang.invoke.  That might be causing the lambda folks to hold back on backend updates.
>
> -- John

Yes, it's a bug in the lambda workspace.
com.sun.runtime.ProxyHelper use invokeVarargs() instead of 
invokeWithArguments at line 61.

Maurizio, why not use MethodHandles.asInstance() instead of 
ProxyHelper.makeProxy() ?

Rémi

> On Feb 12, 2011, at 4:42 PM, Howard Lovatt wrote:
>
>> Using Stephen's Mac OS X builds I find that the latest build:
>>
>> java (JVM) Version:
>> openjdk version "1.7.0-internal-fastdebug"
>> OpenJDK Runtime Environment (build
>> 1.7.0-internal-fastdebug-stephen_2011_02_07_15_42-b00)
>>
>> Has a problem with a method reference:
>>
>>     final ActionListener al4 = Main#print( ActionEvent );
>>
>> Where print is:
>>
>>   private static void print( final ActionEvent notUsed ) {
>>     out.println( "Main.print method called" );
>>   }
>>
>> The error I get is:
>>
>> # To suppress the following error report, specify this argument
>> # after -XX: or in .hotspotrc:  SuppressErrorAt=/methodOop.cpp:697
>> #
>> # A fatal error has been detected by the Java Runtime Environment:
>> #
>> #  Internal Error
>> (/Users/stephen/dev/java/src/mlvm/sources/hotspot/src/share/vm/oops/methodOop.cpp:697),
>> pid=87457, tid=4298117120
>> #  assert(_adapter == NULL) failed: init'd to NULL
>> #
>> # JRE version: 7.0
>> # Java VM: OpenJDK 64-Bit Server VM (20.0-b06-fastdebug mixed mode
>> bsd-amd64 compressed oops)
>> # An error report file with more information is saved as:
>> # /Users/lov080/Dropbox/Personal/Java/examples/Lambdas/build/classes/hs_err_pid87457.log
>> #
>> # If you would like to submit a bug report, please visit:
>> #   http://java.sun.com/webapps/bugreport/crash.jsp
>> #
>>
>> If the error at methodOop.cpp:697 is suppressed then the error is:
>>
>> Exception in thread "main" java.lang.NoSuchMethodError:
>> java.dyn.MethodHandle.invokeVarargs([Ljava/lang/Object;)Ljava/lang/Object;
>> 	at com.sun.runtime.ProxyHelper$1.invoke(ProxyHelper.java:61)
>> 	at $Proxy0.actionPerformed(Unknown Source)
>> 	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2019)
>> 	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2342)
>> 	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
>> 	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
>> 	at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
>> 	at javax.swing.AbstractButton.doClick(AbstractButton.java:356)
>> 	at lambdas.Main.methodReferences(Main.java:147)
>> 	at lambdas.Main.main(Main.java:24)
>>
>>
>> The previous build, dated 11 Jan, is fine with this example.
>>
>>    -- Howard.
>> _______________________________________________
>> mlvm-dev mailing list
>> mlvm-dev at openjdk.java.net
>> http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev
> _______________________________________________
> mlvm-dev mailing list
> mlvm-dev at openjdk.java.net
> http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev



More information about the mlvm-dev mailing list