reopen JDK-8063054?

Vicente Romero vicente.romero at oracle.com
Wed Nov 23 15:37:06 UTC 2016


Hi,

Thanks for the report. It seems like I made a mistake in the evaluation, 
working on it.

Vicente

On 11/23/2016 06:11 AM, Maurizio Cimadamore wrote:
> I'm seeing the warnings myself - Vicente can you take another look?
>
> Maurizio
>
>
> On 23/11/16 03:34, Liam Miller-Cushon wrote:
>> JDK-8063054 was marked 'cannot reproduce', but I'm still seeing this 
>> issue with 9-ea+145:
>>
>> $ cat Test.java
>> class Test {
>>   void test(Box<? extends Box<Number>> b) {
>>     Number n = b.<Number>map(Box::get).get();
>>   }
>> }
>>
>> interface Func<S,T> { T apply(S arg); }
>>
>> interface Box<T> {
>>   T get();
>>   <R> Box<R> map(Func<T,R> f);
>> }
>> $ javac -Xlint:rawtypes Test.java
>> Test.java:3: warning: [rawtypes] found raw type: Box
>>     Number n = b.<Number>map(Box::get).get();
>>                              ^
>>   missing type arguments for generic class Box<T>
>>   where T is a type-variable:
>>     T extends Object declared in interface Box
>> 1 warning
>>
>> $ cat Test.java
>> interface Consumer<T> { void accept(T arg); }
>> interface Parent<P> { void foo(); }
>> interface Child extends Parent<String> {}
>>
>> class Test {
>>   static <T> void m(T arg, Consumer<T> f) {}
>>
>>   public void test(Child c) { m(c, Parent::foo); }
>> }
>> $ javac -Xlint:rawtypes Test.java
>> Test.java:8: warning: [rawtypes] found raw type: Parent
>>   public void test(Child c) { m(c, Parent::foo); }
>>                                    ^
>>   missing type arguments for generic class Parent<P>
>>   where P is a type-variable:
>>     P extends Object declared in interface Parent
>> 1 warning
>



More information about the compiler-dev mailing list