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

John Rose john.r.rose at oracle.com
Sat Feb 12 17:08:19 PST 2011


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

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



More information about the mlvm-dev mailing list