Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.
Sign upjava.lang.invoke.LambdaConversionException: Incorrect number of parameters for bridge signature #11373
Comments
danieldietrich
referenced this issue
Jan 19, 2019
Closed
IllegalAccessError: tried to access class io.vavr.Lambda from class Main$ #2337
This comment has been minimized.
This comment has been minimized.
Interesting! Playing around with the repro, trying to minimise a bit more still: public interface Fun0 {
String ap();
default Fun0 test(Fun0 b) { return null; }
}
public interface Fun0Impl extends Fun0 {
default Fun0Impl test(Fun0 b) { return null; }
} object Test extends App {
(() => null): Fun0Impl
} |
adriaanm
referenced this issue
Jan 21, 2019
Merged
Add bridges for overridden methods in lambda indy call #6087
This comment has been minimized.
This comment has been minimized.
Looks like the linked PR regressed here. The log says
the sam bridges are only intended for bridges for the actual sam method, whereas here |
This comment has been minimized.
This comment has been minimized.
I proposed a fix scheduled for 2.12.9 |
adriaanm
added this to the 2.12.9 milestone
Jan 21, 2019
This comment has been minimized.
This comment has been minimized.
Thx, that was fast! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
danieldietrich commentedJan 19, 2019
•
edited
There seems to be a general scala/scalac problem that does occur with Scala 2.12.7+ but not with Scala 2.12.4 for example. I also tested it with Scala 2.13.0-M5.
@2m originally reported it as possible Vavr bug: vavr-io/vavr#2337
I found a minimal example that only depends on standard Java 8 (or above).
Running it
Tested with Oracle JDK 1.8.0_181
Output
Notes
The example does run properly if we do one of the following modifications:
test()
:B test(B b)
:Thanks for looking into it!