-
Bug
-
Resolution: Fixed
-
P3
-
8
-
b70
-
Verified
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8098754 | emb-9 | Srikanth Adayapalam | P3 | Resolved | Fixed | team |
// Item #1 is a spec change that requires a corresponding implementation change.
// Items #2 and #3 are spec changes only, to align with the behavior already exhibited by JDK 8.
1) AnnotatedWildcardType.getAnnotated*Bounds() should mimic WildcardType.get*Bounds()
- AnnotatedType[] getAnnotatedLowerBounds(): Returns the potentially annotated lower bounds of this wildcard type. _Note that if no lower bound is explicitly declared, the lower bound is the type of null. In this case, a zero length array is returned._
- AnnotatedType[] getAnnotatedUpperBounds(): Returns the potentially annotated upper bounds of this wildcard type. _Note that if no upper bound is explicitly declared, the upper bound is Object._
2) AnnotatedTypeVariable.getAnnotatedBounds() should mimic TypeVariable.getBounds()
AnnotatedType[] getAnnotatedBounds(): Returns the potentially annotated bounds of this type variable. _Note that if no bound is explicitly declared, the bound is Object._
3) TypeVariable.getAnnotatedBounds() should mimic TypeVariable.getBounds()
AnnotatedType[] getAnnotatedBounds(): Returns an array of AnnotatedType objects that represent the use of types to denote the upper bounds of the type parameter represented by this TypeVariable. The order of the objects in the array corresponds to the order of the bounds in the declaration of the type parameter. _Note that if no upper bound is explicitly declared, the upper bound is Object._
// Items #2 and #3 are spec changes only, to align with the behavior already exhibited by JDK 8.
1) AnnotatedWildcardType.getAnnotated*Bounds() should mimic WildcardType.get*Bounds()
- AnnotatedType[] getAnnotatedLowerBounds(): Returns the potentially annotated lower bounds of this wildcard type. _Note that if no lower bound is explicitly declared, the lower bound is the type of null. In this case, a zero length array is returned._
- AnnotatedType[] getAnnotatedUpperBounds(): Returns the potentially annotated upper bounds of this wildcard type. _Note that if no upper bound is explicitly declared, the upper bound is Object._
2) AnnotatedTypeVariable.getAnnotatedBounds() should mimic TypeVariable.getBounds()
AnnotatedType[] getAnnotatedBounds(): Returns the potentially annotated bounds of this type variable. _Note that if no bound is explicitly declared, the bound is Object._
3) TypeVariable.getAnnotatedBounds() should mimic TypeVariable.getBounds()
AnnotatedType[] getAnnotatedBounds(): Returns an array of AnnotatedType objects that represent the use of types to denote the upper bounds of the type parameter represented by this TypeVariable. The order of the objects in the array corresponds to the order of the bounds in the declaration of the type parameter. _Note that if no upper bound is explicitly declared, the upper bound is Object._
- backported by
-
JDK-8098754 Clarify treatment of bounds in j.l.r.Annotated{WildcardType,TypeVariable}
- Resolved
- duplicates
-
JDK-8054333 AnnotatedWildcardType.getAnnotatedUpperBounds() returns wrong result if wildcard declares no upper bound
- Closed
- relates to
-
JDK-8054162 TypeVariable.getAnnotatedBounds() returns wrong result if the type parameter declares no bounds
- Closed
-
JDK-8054333 AnnotatedWildcardType.getAnnotatedUpperBounds() returns wrong result if wildcard declares no upper bound
- Closed
-
JDK-8098790 Improve cross references and wording in java.lang.reflect.AnnotatedFoo types
- Closed