Fwd: Re: Compilation error with JDK9-ea+138

Christian Beikov christian.beikov at gmail.com
Thu Oct 6 15:53:48 UTC 2016


I am having trouble to create a small example that shows the problem too.
Since the project is open source you can try that yourselves on that 
project.

URL: https://github.com/Blazebit/blaze-persistence.git

export MAVEN_OPTS="--add-modules=java.se.ee"
mvn -pl jpa-criteria/impl -am clean compile

Then you will get the error message:
BlazeCriteriaBuilderImpl.java:[997,48] error: incompatible types: 
SimpleCase<CAP#1,R> cannot be converted to SimpleCase<C,R>

Regards,
Christian

Am 06.10.2016 um 17:30 schrieb Maurizio Cimadamore:
>
> What Jon says. I;ve tried to give this a try using this example:
>
> class Test {
>
> interface Expression<T> { }
>
> interface SimpleCase<A, B> { }
>
> <C, R> SimpleCase<C, R> selectCase(Expression<? extends C> expression) {
>           return selectCase((Class<R>) null, expression);
> }
>
> <C, R> SimpleCase<C, R> selectCase(Class<R> type, Expression<? extends 
> C> expression) {
>           return null;
>       }
> }
>
>
> But this passes with latest compiler. So I'm probably missing 
> something (i.e. some bounds in the type-variable decl for Expression 
> or SimpleCase?)
>
> Maurizio
>
>
> On 06/10/16 16:17, Jonathan Gibbons wrote:
>>
>> Christian,
>>
>> As a general rule, it is better if you can post complete but reduced 
>> test cases, and post all the messages from the compiler. It is often 
>> hard to properly diagnose cases where someone posts some fragment of 
>> code and asks what's wrong.
>>
>> -- Jon
>>
>>
>> On 10/6/16 8:08 AM, Christian Beikov wrote:
>>>
>>> I have been directed to this mailing list for this error.
>>>
>>> Is this a known issue?
>>>
>>>
>>>
>>> -------- Weitergeleitete Nachricht --------
>>> Betreff: 	Re: Compilation error with JDK9-ea+138
>>> Datum: 	Wed, 05 Oct 2016 10:27:53 -0700
>>> Von: 	Alex Buckley <alex.buckley at oracle.com>
>>> Organisation: 	Oracle Corporation
>>> An: 	jigsaw-dev at openjdk.java.net
>>>
>>>
>>>
>>> This isn't a Jigsaw issue, please mail compiler-dev instead, being sure
>>> to note which JDK 9 build you are compiling with.
>>>
>>> On 10/5/2016 12:55 AM, Christian Beikov wrote:
>>> > The following used to compile just fine on JDKs < 9
>>> >
>>> >      @Override
>>> >      public <C, R> SimpleCase<C, R> selectCase(Expression<? extends C>
>>> > expression) {
>>> >          return selectCase((Class<R>) null, expression);
>>> >      }
>>> >
>>> >      public <C, R> SimpleCase<C, R> selectCase(Class<R> type,
>>> > Expression<? extends C> expression) {
>>> >          return new SimpleCaseExpression<C, R>(this, type, expression);
>>> >      }
>>> >
>>> > but now fails with:
>>> >      error: incompatible types: SimpleCase<CAP#1,R> cannot be converted
>>> > to SimpleCase<C,R>
>>> >
>>> > The error is in the first selectCase method.
>>> >
>>> > Is that a bug in the compiler?
>>> >
>>> > Regards,
>>> > Christian
>>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/compiler-dev/attachments/20161006/25558602/attachment.html>


More information about the compiler-dev mailing list