<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<font size="4"><font face="monospace">There was an experiment to
translate non-capturing lambdas with condy, which was never
integrated. As you observed, it requires changes to the
bootstrap method signature; when we started adding the alternate
bootstrap method, we realized there were some cleanups in the
LMF spec/implementation we wanted to do, but these ended up
getting back-burnered. </font></font><br>
<br>
<div class="moz-cite-prefix">On 10/20/2023 4:10 PM, Luke Sandberg
wrote:<br>
</div>
<blockquote type="cite" cite="mid:CAEu=3Gk_au1oEMTB-YcmPZH3vagBw-14GWt-RrrYHmBRETd3FQ@mail.gmail.com">
<div dir="ltr">Hi, as part of a custom compiler I am working on I
stumbled across <a href="https://bugs.openjdk.org/browse/JDK-8198418" moz-do-not-send="true" class="moz-txt-link-freetext">https://bugs.openjdk.org/browse/JDK-8198418</a>
which references invoking LambdaMetafactory.metafactory from a
condy instruction when there are no bound parameters.
<div><br>
</div>
<div>I see that there is support for this in
BootstrapMethodInvoker: <a href="https://github.com/openjdk/jdk/blob/77b2394c46bd304ffc0658cb758d971f1f2940b6/src/java.base/share/classes/java/lang/invoke/BootstrapMethodInvoker.java#L136C28-L136C55" moz-do-not-send="true" class="moz-txt-link-freetext">https://github.com/openjdk/jdk/blob/77b2394c46bd304ffc0658cb758d971f1f2940b6/src/java.base/share/classes/java/lang/invoke/BootstrapMethodInvoker.java#L136C28-L136C55</a></div>
<div><br>
</div>
<div>But there is no method implementing this signature that i
can find. </div>
<div><br>
</div>
<div>Is this a half implemented idea from the original condy
implementation? Or am I missing something? Initially i
thought that BootstrapMethodInvoker might handle the signature
delta, but experimentally that is not true :D</div>
<div><br>
</div>
<div>Thanks,</div>
<div>-Luke</div>
</div>
</blockquote>
<br>
</body>
</html>