8036744: Fix raw lint warnings in java.lang.reflect.WeakCache
authordarcy
Wed, 05 Mar 2014 17:08:37 -0800
changeset 23061 c441853d95af
parent 23060 61ffe815de7c
child 23062 ece6b5d8a71b
8036744: Fix raw lint warnings in java.lang.reflect.WeakCache Reviewed-by: lancea, mchung
jdk/src/share/classes/java/lang/reflect/WeakCache.java
--- a/jdk/src/share/classes/java/lang/reflect/WeakCache.java	Thu Mar 06 01:03:27 2014 +0000
+++ b/jdk/src/share/classes/java/lang/reflect/WeakCache.java	Wed Mar 05 17:08:37 2014 -0800
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -184,6 +184,7 @@
         return reverseMap.size();
     }
 
+    @SuppressWarnings("unchecked") // refQueue.poll actually returns CacheKey<K>
     private void expungeStaleEntries() {
         CacheKey<K> cacheKey;
         while ((cacheKey = (CacheKey<K>)refQueue.poll()) != null) {
@@ -351,6 +352,7 @@
         }
 
         @Override
+        @SuppressWarnings("unchecked")
         public boolean equals(Object obj) {
             K key;
             return obj == this ||
@@ -359,7 +361,7 @@
                    // cleared CacheKey is only equal to itself
                    (key = this.get()) != null &&
                    // compare key by identity
-                   key == ((CacheKey<K>) obj).get();
+                   key == ((CacheKey<K>) obj).get(); // Cast is safe from getClass check
         }
 
         void expungeFrom(ConcurrentMap<?, ? extends ConcurrentMap<?, ?>> map,