Merge "Handle type annotations when generating cache keys" am: 255b001fc2
am: 221404f748

Change-Id: I6cda5bf0fe35ca432d78187dcb8e4d66bfa69bb6
diff --git a/src/com/google/doclava/Converter.java b/src/com/google/doclava/Converter.java
index 0d4e455..71c7acb 100644
--- a/src/com/google/doclava/Converter.java
+++ b/src/com/google/doclava/Converter.java
@@ -614,7 +614,10 @@
     @Override
     protected Object keyFor(Object o) {
       Type t = (Type) o;
-      String keyString = o.getClass().getName() + "/" + o.toString() + "/";
+      while (t.asAnnotatedType() != null) {
+        t = t.asAnnotatedType().underlyingType();
+      }
+      String keyString = t.getClass().getName() + "/" + t.toString() + "/";
       if (t.asParameterizedType() != null) {
         keyString += t.asParameterizedType().toString() + "/";
         if (t.asParameterizedType().typeArguments() != null) {