Code review request: 7077389 Reflection classes do not build with javac -Xlint:all -Werror

Rémi Forax forax at univ-mlv.fr
Wed Aug 10 13:20:55 PDT 2011


On 08/10/2011 09:39 PM, Joe Darcy wrote:
> On 8/10/2011 11:36 AM, Alexandre Boulgakov wrote:
>> Hello Joe,
>>
>> Could you please review these small changes to remove javac build 
>> warnings from the reflection classes?
>>
>> Bug detail: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7077389
>> webrev: http://cr.openjdk.java.net/~mduigou/7077389/0/webrev/ 
>> <http://cr.openjdk.java.net/%7Emduigou/7077389/0/webrev/>
>>
>> I haven't updated the copyrights to avoid polluting the webrev.
>> I did not add JAVAC_WARNINGS_FATAL=true to the makefile because it is 
>> responsible for other packages which still have build warnings.
>>
>> Thanks,
>> Sasha
>
> Hi Sasha.
>
> I approve the code changes with the following exceptions:
>
>     src/share/classes/sun/reflect/UnsafeFieldAccessorImpl.java
>
> Offhand, I'm not sure of the semantics of this change.
>
> While adding serialVersionUIDs in sun/reflect/annotation/* is a good 
> change, I believe this interacts with another bug I'm working on so 
> please hold off on those changes for now.
>
> Thanks,
>
> -Joe

In AccessorGenerator:

   protected static final Class<?>[] primitiveTypes = new Class[] {

should be

   protected static final Class<?>[] primitiveTypes = new Class<?>[] {

in AnnotationParser:

   type.getClassLoader(), new Class[] { type },

should be

   type.getClassLoader(), new Class<?>[] { type },


in TypeVariableImpl:

   TypeVariable<? extends GenericDeclaration>  that =
                     (TypeVariable<? extends GenericDeclaration>) o;

should be
    
   TypeVariable<?>  that =  (TypeVariable<?>) o;


In GenericDeclRepository:

   @SuppressWarnings("rawtypes")
             TypeVariable<?>[] tps = new TypeVariable[ftps.length];

should be
             TypeVariable<?>[] tps = new TypeVariable<?>[ftps.length];


It seems that the compiler is not able to find a raw type
if it's the component type of an array.
(CC to compiler-dev)

cheers,
Rémi




More information about the compiler-dev mailing list