Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[jdt-core-dev] Bug spotted when compiling a lambda project

Hi,

we currently use JDT in our project Spoon (https://github.com/INRIA/spoon), in order to build our own Java AST model before doing some transformation. Recently we had an issue when using Spoon on a project which define lambda utilities: https://github.com/palatable/lambda

Then I just tried to compile the project in IntelliJ using Eclipse compiler and it shows some errors (13 precisely) like:

Error:(65, 27) java: Type mismatch: cannot convert from new com.jnape.palatable.lambda.adt.coproduct.CoProduct2<A,B>(){} to capture#8-of ? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct2<A,B>

Please note that the project compile well using javac with JDK 8.
I'm using in IntelliJ Eclipse compiler 4.6.1 and in Spoon we are using the following JDT dependency:

    <dependency>
      <groupId>org.eclipse.tycho</groupId>
      <artifactId>org.eclipse.jdt.core</artifactId>
      <version>3.12.0.v20160516-2131</version>
    </dependency>

I'm not sure if it's a known bug, or if it raises compilation error by choice as some operation are unchecked here.
You can find attached the entire list of errors.

Regards,
Simon.
--
Simon Urli
Research Engineer
INRIA - Spirals Team
LibRepair Project
Information:Eclipse compiler 4.6.1 was used to compile java sources
Information:30/01/2017 14:57 - Compilation completed with 13 errors and 375 warnings in 4s 976ms
/Users/urli/Github/lambda/src/main/java/com/jnape/palatable/lambda/adt/coproduct/CoProduct3.java
Error:(65, 27) java: Type mismatch: cannot convert from new com.jnape.palatable.lambda.adt.coproduct.CoProduct2<A,B>(){} to capture#8-of ? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct2<A,B>
Error:(70, 17) java: Type mismatch: cannot convert from new com.jnape.palatable.lambda.adt.coproduct.CoProduct2<A,B>(){} to capture#8-of ? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct2<A,B>
Error:(65, 16) java: Type mismatch: cannot convert from capture#8-of ? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct2<A,B> to com.jnape.palatable.lambda.adt.coproduct.CoProduct2<A,B>
/Users/urli/Github/lambda/src/main/java/com/jnape/palatable/lambda/adt/coproduct/CoProduct4.java
Error:(65, 27) java: Type mismatch: cannot convert from new com.jnape.palatable.lambda.adt.coproduct.CoProduct3<A,B,C>(){} to capture#10-of ? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct3<A,B,C>
Error:(71, 17) java: Type mismatch: cannot convert from new com.jnape.palatable.lambda.adt.coproduct.CoProduct3<A,B,C>(){} to capture#10-of ? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct3<A,B,C>
Error:(77, 17) java: Type mismatch: cannot convert from new com.jnape.palatable.lambda.adt.coproduct.CoProduct3<A,B,C>(){} to capture#10-of ? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct3<A,B,C>
Error:(65, 16) java: Type mismatch: cannot convert from capture#10-of ? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct3<A,B,C> to com.jnape.palatable.lambda.adt.coproduct.CoProduct3<A,B,C>
/Users/urli/Github/lambda/src/main/java/com/jnape/palatable/lambda/adt/coproduct/CoProduct5.java
Error:(50, 27) java: Type mismatch: cannot convert from new com.jnape.palatable.lambda.adt.coproduct.CoProduct4<A,B,C,D>(){} to capture#2-of ? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct4<A,B,C,D>
Error:(56, 17) java: Type mismatch: cannot convert from new com.jnape.palatable.lambda.adt.coproduct.CoProduct4<A,B,C,D>(){} to capture#2-of ? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct4<A,B,C,D>
Error:(62, 17) java: Type mismatch: cannot convert from new com.jnape.palatable.lambda.adt.coproduct.CoProduct4<A,B,C,D>(){} to capture#2-of ? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct4<A,B,C,D>
Error:(68, 17) java: Type mismatch: cannot convert from new com.jnape.palatable.lambda.adt.coproduct.CoProduct4<A,B,C,D>(){} to capture#2-of ? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct4<A,B,C,D>
Error:(50, 16) java: Type mismatch: cannot convert from capture#2-of ? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct4<A,B,C,D> to com.jnape.palatable.lambda.adt.coproduct.CoProduct4<A,B,C,D>
/Users/urli/Github/lambda/src/main/java/com/jnape/palatable/lambda/lens/Lens.java
Error:(261, 16) java: The type com.jnape.palatable.lambda.lens.Lens<capture#29-of ? super S & capture#31-of ? super S,capture#33-of ? extends S,capture#30-of ? extends A,capture#32-of ? super A> does not define apply(java.util.function.Function<? super A,? extends FB>, S) that is applicable here

Back to the top